三种实现方式
1、实现Interceptor接口
2、继承AbstractInterceptor类
3、继承MethodFilterInterceptor类(当自定义拦截器配置了拦截参数时,自定义拦截器必须使用该方法)
struts.xml配置如下
<package name="default" namespace="/" extends="struts-default">
<interceptors>
<!-- 声明拦截器 -->
<interceptor name="自定义拦截器名称" class="自定义拦截器的全路径">
<!-- <param name="excludeMethods"></param> --> <!-- 不拦截的方法,多个方法之间用逗号隔开-->
<param name="includeMethods">list</param> <!-- 拦截的方法,多个方法之间用逗号隔开 -->
</interceptor>
<interceptor-stack name="mystack"><!--设置拦截器的栈-->
<interceptor-ref name="自定义的拦截器名称"></interceptor-ref>
<interceptor-ref name="defaultStack"/><!-- struts2自带到(18)个拦截器,必须写上 -->
</interceptor-stack>
</interceptors>
<action name="action的类名" class="action的全路径" method="方法名">
<result name="success">/product.jsp</result>
<result name="error">/login.jsp</result>
<!-- 使用拦截器 -->
<interceptor-ref name="mystack"/>
</action>
</package>