• springMvc 拦截器实现


    1、登录拦截类代码

    package com.login;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.HandlerInterceptor;
    import org.springframework.web.servlet.ModelAndView;
    
    public class Login implements HandlerInterceptor{
    
    
        /**
         * 在controller执行之后的DispatcherServlet之后执行
         * */
        @Override
        public void afterCompletion(HttpServletRequest httpRequest,
                                    HttpServletResponse httpResponse, Object arg2, Exception arg3)
                throws Exception {
            System.out.println("在controller执行之后的DispatcherServlet之后执行");
        }
    
        /**
         * 在controller执行之后的DispatcherServlet之后执行
         * */
        @Override
        public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
                               Object arg2, ModelAndView arg3) throws Exception {
            System.out.println("在controller执行之后的DispatcherServlet之后执行");
    
        }
    
        /**
         * 在DispatcherServlet之前执行
         * */
        @Override
        public boolean  preHandle(HttpServletRequest request, HttpServletResponse response,
                                 Object object) throws Exception {
    
               // System.out.println("在DispatcherServlet之前执行");
               // return true;
    
    
           // response.sendRedirect("/olForum/forumList.html?login=aaa");
            response.sendRedirect("/login/index");
            return false;
    
        }
    
    }
    

      2、 spring配置文件中 配置拦截相关操作

    <!--拦截器-->
     <mvc:interceptors>
           <!--使用 bean 定义一个 Interceptor,直接定义在 mvc:interceptors 下面的 Interceptor 将拦截所有的请求-->
           <!--<bean class="com.login.Login"/>-->
            <mvc:interceptor>
                <mvc:mapping path="/*/*"/>
                <!--不拦截的请求-->
                <mvc:exclude-mapping path="/login/index"/>
            <!-- 定义在 mvc:interceptor 下面的 Interceptor,表示对特定的请求进行拦截-->
                <bean class="com.login.Login"/>
            </mvc:interceptor>
        </mvc:interceptors>
    

      

  • 相关阅读:
    推荐系统学习--cb+cf 初见
    耳机的阻抗和灵敏度问题
    java中常见的几种Runtimeexception
    java泛型
    ubuntu安装opencv
    ubuntu12.04静态ip设置问题
    Graph Theory
    SQL简单上手教程
    C++ 构造函数、拷贝构造函数和赋值运算符重载
    C语言函数调用栈
  • 原文地址:https://www.cnblogs.com/cyrfr/p/9274412.html
Copyright © 2020-2023  润新知