session过期以后,需要重新登陆,struts2拦截器或过滤器可以验证session是否还存在,如果不存在,则跳转到登录页面,或其他页面。其中拦截器是动态拦截action调用的对象,开发者可以定义在一个action执行前后执行的代码,也可以在一个action执行前阻止其执行;过滤器是在jsp页面中获取session,如果获取不到,再进行相应的处理。
struts2提供了种类丰富的拦截器,在struts-default.xml里面有关于默认的拦截器和拦截器链的配置,拦截器链就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。
简单来说,就是编写拦截器类和在struts的配置文件里定义拦截器、拦截器栈。
自定义拦截器
1.1 实现拦截器类
所有的Struts2的拦截器都直接或间接实现接口com.opensymphony.xwork2.interceptor.Interceptor。该接口提供了三个方法:
1)void init();在该拦截器被初始化之