Struts——自定義攔截器
阿新 • • 發佈:2018-02-27
全局 brush sys tca ima http param 方法 配置
設置全局的異常
攔截器
public class LoginInterceptor extends MethodFilterInterceptor { protected String doIntercept(ActionInvocation actionInvocation) throws Exception { // 前處理 System.out.println("前處理"); // 放行 actionInvocation.invoke(); // 後處理 System.out.println("後處理"); return null; } }
interceptor配置文件
<interceptors> <!-- 1.註冊攔截器 --> <interceptor name="loginInterceptor" class="cn.x5456.web.interceptor.LoginInterceptor"></interceptor> <!-- 2.註冊攔截器棧 --> <interceptor-stack name="myStack"> <!-- 給我們的攔截器棧起個名字 --> <interceptor-ref name="loginInterceptor"> <!-- 指定哪些方法不攔截 --> <param name="excludeMethods">login</param> <!-- 指定哪些方法需要攔截 --> <!--<param name="includeMethods">login</param>--> </interceptor-ref> <interceptor-ref name="defaultStack"></interceptor-ref> <!-- 將官方棧放入我們的棧中 --> </interceptor-stack> </interceptors> <!-- 3.指定包中的默認攔截器棧 --> <default-interceptor-ref name="myStack"></default-interceptor-ref>
單獨為某個action設置指定的攔截器
<action name="Demo1Action_*" class="cn.itcast.a_interceptor.Demo1Action" method="{1}" > <!-- 為Action單獨指定走哪個攔截器(棧) <interceptor-ref name="myStack"></interceptor-ref>--> <result name="success" type="dispatcher" >/index.jsp</result> </action>
註:攔截器無法攔截直接訪問jsp,htm等頁面
定義全局結果集
判斷父界面是否在框架中,不在的話跳轉到login.jsp
Struts——自定義攔截器