SessionInterceptor.java 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package com.yaoyicloud.config;
  2. import org.springframework.web.servlet.HandlerInterceptor;
  3. import org.springframework.web.servlet.ModelAndView;
  4. import javax.servlet.http.HttpServletRequest;
  5. import javax.servlet.http.HttpServletResponse;
  6. import javax.servlet.http.HttpSession;
  7. import java.util.HashMap;
  8. import java.util.Map;
  9. public class SessionInterceptor implements HandlerInterceptor {
  10. private static final Map<String, HttpSession> SESSION_MAP = new HashMap<>();
  11. @Override
  12. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
  13. String relationId = request.getParameter("relationId");
  14. String Mysession = request.getHeader("X-Session-Id");
  15. if (Mysession == null){
  16. HttpSession session = request.getSession(true);
  17. SESSION_MAP.put(relationId, session);
  18. }
  19. return true;
  20. }
  21. @Override
  22. public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
  23. // 这里可以添加请求处理后的逻辑,目前示例中没有具体操作
  24. }
  25. @Override
  26. public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
  27. // 这里可以添加请求完成后的逻辑,目前示例中没有具体操作
  28. }
  29. }