码迷,mamicode.com
首页 > 其他好文 > 详细

Struts——自定义拦截器

时间:2018-02-27 21:24:29      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:null   配置文件   拦截器   拦截器栈   哪些   tca   gpo   patch   eth   

设置全局的异常

技术分享图片

拦截器

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——自定义拦截器

标签:null   配置文件   拦截器   拦截器栈   哪些   tca   gpo   patch   eth   

原文地址:https://www.cnblogs.com/x54256/p/8480593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!