zoukankan      html  css  js  c++  java
  • Spring mvc 中快速获取request、reponse、session

    一:创建一个基本控制器类:

    public class BaseController extends HandlerInterceptorAdapter{
    public static HttpServletRequest request;
    public static HttpServletResponse reponse;
    public static HttpSession session;
    @Override
    public boolean preHandle(HttpServletRequest request,
    HttpServletResponse response, Object handler) throws Exception {
    BaseController.request = request;
    BaseController.reponse = response;
    BaseController.session = request.getSession();
    return super.preHandle(request, response, handler);
    }
    @InitBinder
    protected void initBinder(WebDataBinder binder) {
    binder.registerCustomEditor(Date.class, new CustomDateEditor(
    new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true));
    }

    }

    二:注册这个实现拦截器的主控制器:(在子mvc配置文件.xml 中实现)
    1  拦截所有请求

    <!-- 注册拦截器   -->
    <mvc:interceptors>
    <bean class="com.base.BaseController"></bean>
    </mvc:interceptors>

    2  拦截指定请求

    <!-- 注册拦截器 -->
    <mvc:interceptors>
    <mvc:interceptor>
    <mvc:mapping path="/*" />
    <bean class="com.base.BaseController"></bean>
    </mvc:interceptor>
    </mvc:interceptors>

    三 所有的控制器可以实现这个基类,从而访问request、respons、session
    个人理解:由于实现拦截器功能的bean 并发单态、或者控制器并非单态,所以每次请求的static request  并不是同一个对象 



  • 相关阅读:
    t
    溢出
    https://stackoverflow.com/questions/45591594/fetch-does-not-send-headers
    显示在用户屏幕上的缩略图
    cache buffer
    LZW
    t
    指针悬挂
    使用Linux服务器来通过网络安装和激活Windows 7 —— 一些基本原理
    在C++中如何动态分配一个二维数组
  • 原文地址:https://www.cnblogs.com/leonkobe/p/3546208.html
Copyright © 2011-2022 走看看