zoukankan      html  css  js  c++  java
  • springmvc之自定义拦截器

    1、在springmvc.xml配置文件中配置:

        <mvc:interceptors>
            <!-- 配置自定义的拦截器 -->
            <bean class="com.gong.springmvc.interceptors.FirstInterceptor"></bean>
        </mvc:interceptors>

    2、定义拦截器类,需要继承HandlerInterceptor

    package com.gong.springmvc.interceptors;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.HandlerInterceptor;
    import org.springframework.web.servlet.ModelAndView;
    
    public class FirstInterceptor implements HandlerInterceptor{
        
        //该方法在目标方法之前被调用
        //如果返回true,则继续调用后续的拦截器和目标方法,若为false,则不会在调用后续的拦截器和目标方法
        //该方法可以考虑做权限、日志、事务等
        @Override
        public boolean preHandle(HttpServletRequest request,
                HttpServletResponse response, Object handler) throws Exception {
            System.out.println("[FirstInterceptor] preHandle");
            return true;
        }
        
        //调用目标方法之后,但在渲染视图之前被调用
        //可以修改请求域中的属性或视图做出修改
        @Override
        public void postHandle(HttpServletRequest request,
                HttpServletResponse response, Object handler,
                ModelAndView modelAndView) throws Exception {
            System.out.println("[FirstInterceptor] postHandle");
        }
    
        //在渲染视图之后被调用
        //释放资源
        @Override
        public void afterCompletion(HttpServletRequest request,
                HttpServletResponse response, Object handler, Exception ex)
                throws Exception {
            System.out.println("[FirstInterceptor] afterCompletion");
        }
    
    }

    需要注意每个方法调用的时机和顺序。

    3、在发送请求后,在终端可以看到:

     

  • 相关阅读:
    SASS用法指南(转)
    前端框架参考
    NodeJS路由(server.js + router.js)
    NodeJS收发GET和POST请求
    node中的对象
    《怪兽必须死》游戏框架分析
    Git学习笔记(SourceTree克隆、提交、推送、拉取等)
    以前做的H5推广小游戏(活动及派发奖品形式)
    Egret3D初步学习笔记四 (地形使用)
    Egret3D初步学习笔记三 (角色使用)
  • 原文地址:https://www.cnblogs.com/xiximayou/p/12189328.html
Copyright © 2011-2022 走看看