1、拦截器定义:AOP
运行时间动作方法执行之前
结果视图之后
2、自定义拦截器
单个拦截器
package cn.gson.web.interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
/**
* @author linoer
* 自定义拦截器
* 1、创建类,继承AbstractInterceptor,实现方法
* 2、在struts配置文件中配置
* a、声明拦截器
* b、使用自定义拦截器<interceptor-ref name="demo1Interceptor" />
* 注意:配置任意拦截器,默认拦截器stack不工作
*
*/
public class Demo1Interceptor extends AbstractInterceptor{
@Override
public String intercept(ActionInvocation arg0) throws Exception {
System.out.println("demo1拦截器拦截咯,执行动作方法之前");
//放行,如果有下一个拦截器,则执行下一个拦截器,否则则执行动作
String rtValue = arg0.invoke();//rtValue结果视图的名称
System.out.println("执行动作之后");
return rtValue;
}
}