大家好,小福来为大家解答以上的问题。拦截器,拦截器这个很多人还不知道,现在让我们一起来看看吧!
1、java里的拦截器是动态拦截Action调用的对象。
2、它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。
3、在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。
4、扩展资料:过滤器可以简单理解为“取你所想取”,忽视掉那些你不想要的东西;拦截器可以简单理解为“拒你所想拒”,关心你想要拒绝掉哪些东西,比如一个BBS论坛上拦截掉敏感词汇。
5、拦截器是基于java反射机制的,而过滤器是基于函数回调的。
6、2、过滤器依赖于servlet容器,而拦截器不依赖于servlet容器。
7、3、拦截器只对action起作用,而过滤器几乎可以对所有请求起作用。
8、4、拦截器可以访问action上下文、值栈里的对象,而过滤器不能。
9、5、在action的生命周期里,拦截器可以多起调用,而过滤器只能在容器初始化时调用一次。
10、参考资料来源:百度百科——拦截器在Webwork的中文文档的解释为——拦截器是动态拦截Action调用的对象。
11、它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。
12、同时也是提供了一种可以提取action中可重用的部分的方式。
13、谈到拦截器,还有一个词大家应该知道——拦截器链(Interceptor Chain,在Struts 2中称为拦截器栈Interceptor Stack)。
14、拦截器链就是将拦截器按一定的顺序联结成一条链。
15、在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。
本文到此分享完毕,希望对大家有所帮助。