struts2拦截器流程详解

2025-11-21 11:18:28

1、struts2的拦截器可以在一切访问action方法之前 进行拦截处理。

新建一个拦截器处理类

struts2拦截器流程详解

2、说明:

拦截器处理类需要继承 extends AbstractiInterceptor

并实现intercept(ActionInvocation invocation)方法

此方法为拦截器处理数据的主要防范,处理完毕之后,继续执行,则返回

return invocation.invoke();

struts2拦截器流程详解

3、新建一个普通的action方法,

struts2拦截器流程详解

4、action中输出一句话,表示执行过了这个action

struts2拦截器流程详解

5、接下来做拦截器配置

<interceptors>

     <interceptor name="inteceptor1" class="com.test.interceptor.interceptor1"/>

</interceptors>

定义了拦截器的名称叫做inteceptor1,实现类为 com.test.interceptor.interceptor1

struts2拦截器流程详解

6、配置完毕拦截器后,需要把这个拦截器作用于你要拦截的方法中去,并且struts2默认的拦截器栈也要显式声明

<interceptor-ref name="interceptor1"></interceptor-ref><interceptor-ref name="defaultStack"></interceptor-ref>

注意:自定义拦截器在之前

struts2拦截器流程详解

7、接下来访问测试的action,会发现,先执行拦截器,然后再执行action

struts2拦截器流程详解

struts2拦截器流程详解

8、但是如果我有N多个action 每个都要配置struts2的默认拦截器栈。那么我们可以定义默认的拦截器栈:

<!-- 定义默认拦截器 -->        <default-interceptor-ref name="defaultStack"></default-interceptor-ref>

效果和上边是一样的

struts2拦截器流程详解

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢