zoukankan      html  css  js  c++  java
  • 获得HttpServletRequest 和HttpSession对象

    package org.jeecgframework.core.util;  
      
    import java.util.HashMap;  
    import java.util.Map;  
    import javax.servlet.http.HttpServletRequest;  
    import javax.servlet.http.HttpSession;  
    import org.springframework.web.context.request.RequestContextHolder;  
    import org.springframework.web.context.request.ServletRequestAttributes;  
      
    /** 
    * @ClassName: ContextHolderUtils  
    * @Description: TODO(上下文工具类)  
    * @author  张代浩  
    * @date 2012-12-15 下午11:27:39  
    * 
     */  
    public class ContextHolderUtils {  
        /** 
         * SpringMvc下获取request 
         *  
         * @return 
         */  
        public static HttpServletRequest getRequest() {  
            HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();  
            return request;  
      
        }  
      
        /** 
         * SpringMvc下获取session 
         *  
         * @return 
         */  
        public static HttpSession getSession() {  
            HttpServletRequest request = getRequest();  
            String tempSessionId = request.getParameter("sessionId");  
            HttpSession session = request.getSession();  
            String sessionId = session.getId();  
            if(StringUtil.isNotEmpty(tempSessionId) && !tempSessionId.equals(sessionId)){  
                sessionId = tempSessionId;  
                if(sessionMap.containsKey(sessionId)){  
                    session = sessionMap.get(sessionId);  
                }  
            }  
            if(!sessionMap.containsKey(sessionId)){  
                sessionMap.put(sessionId, session);  
            }  
            return session;  
        }  
      
          
        private static final Map<String, HttpSession> sessionMap = new HashMap<String, HttpSession>();  
          
        public static HttpSession getSession(String sessionId){  
            HttpSession session = sessionMap.get(sessionId);  
            return session == null ? getSession() : session;  
        }  
          
        public static void removeSession(String sessionId){  
            if(sessionMap.containsKey(sessionId)){  
                sessionMap.remove(sessionId);  
            }  
        }  
    
  • 相关阅读:
    AtCoder Grand Contest 015 题解
    AtCoder Grand Contest 014 题解
    AtCoder Grand Contest 013 题解
    AtCoder Grand Contest 012 题解
    AtCoder Grand Contest 011 题解
    AtCoder Grand Contest 010 题解
    AtCoder Grand Contest 009 题解
    NOIP2017 Day2 题解
    博客园主题备份
    多项式全家桶
  • 原文地址:https://www.cnblogs.com/jpfss/p/9081531.html
Copyright © 2011-2022 走看看