Struts2自定义拦截器
首先应该先创建拦截器
拦截器:在struts2中拦截器的作用是动态拦截Action对象的调用,大部分时候拦截器使用的是Java中的代理机制来完成的,它能够在Action执行的前后执行一段代码,也能在Action执行之前将它进行拦截,同时也提供了一种可以提取Action中可重用部分代码的方式。
方式1:实现Interceptor接口
如图所示,要注意导入的包名,千万不要导错了。然后实现init,intercept,destroy三个方法。
下面在struts.xml中进行配置
为Action指定拦截器:
方式2:继承AbstractInterceptor类
与Interceptor类不同的是,AbstractInterceptor类实现了init和destroy方法,所以我们只需要实现interceptor方法。
配置文件和上一个方式相同就不重复写了。
方式3:继承MethodFilterInterceptor类
同AbstractInterceptor,它也实现了init,destroy方法,我们只需要实现doInterceptor方法即可,并且可以在配置文件中选择拦截和不拦截的方法。