天天看点

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的类来拦截用户的请求

转载于:https://www.cnblogs.com/chaoku/p/3623300.html