拦截器 Struts中的Interceptor与filter的区别: Filter(过滤器):基于回调函数。依赖于Web容器。 Interceptor (拦截器):Java本身的反射机制。不依赖于容器,基于动态代理。 拦截器: 在Aop(Aspect-Oriented Programming) 中拥有在某个方法或字段被访问之前,进行拦截后在之前或之后加入某些操作。拦截是Aop的一种实现策略。 在Webwork的中文文档的解释为——拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。同时也是提供了一种可以提取action中可重用的部分的方式。 <package name=”my” extends=”struts-default” namespace=”/manage”> <interceptors> <!—定义拦截器 -- > <interceptor name=”拦截器名” class=”拦截器实现类” /> <!—定义拦截器栈-- > <interceptor-stack name=”拦截器栈名”> <interceptor-ref name=”拦截器一”> <interceptor-ref name=”拦截器二”> </interceptor-stack> </interceptors> </package>