org.springframework.web.filter.DelegatingFilterProxy的理解

org.springframework.web.filter.DelegatingFilterProxy可以将filter交给spring管理。

我们web.xml中配置filter时一般采用下面这种方式:

1 <filter>
2     <filter-name>myFilter</filter-name>
3     <filter-class>com.chaokuzx.myFilter</filter-class>
4 </filter>

因为一个filter也就是一个servlet,所以myFilter就会交给servlet容器(tomcat)去初始化和销毁。如果我们配置了spring就希望spring可以帮我们管理bean,

myFilter也可以被看做是一个bean。当我们需要spring去管理myFilter,又需要myFilter去实现它作为filter的功能时可以使用

org.springframework.web.filter.DelegatingFilterProxy将filter代理给spring。

配置如下:

<!--   web.xml -->

<filter>
    <filter-name>myfilter</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

     

<!-- spring -->

    <bean id=”myFilter” class=”com.chaokuzx.myFilter”></bean>

<!--    或用注解的方式 -->

当用户的请求被myfilter拦截后,org.springframework.web.filter.DelegatingFilterProxy容器中寻找名为myfilter的类来拦截用户的请求

posted @ 2014-03-25 15:43  潇洒子弦  阅读(2184)  评论(0编辑  收藏  举报
我的邮箱:keepmovingzx@163.com