[Java] 登陆拦截器LoginInterceptor →→→→→进入此内容的聊天室

来自 , 2020-08-03, 写在 Java, 查看 172 次.
URL http://www.code666.cn/view/78b9cab1
  1. package com.liang.bike.interceptor;
  2.  
  3. import com.liang.bike.bean.base.UserBase;
  4. import org.apache.log4j.Logger;
  5. import org.springframework.web.servlet.HandlerInterceptor;
  6. import org.springframework.web.servlet.ModelAndView;
  7.  
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. import javax.servlet.http.HttpSession;
  11.  
  12. public class LoginInterceptor implements HandlerInterceptor {
  13.     private Logger logger = Logger.getLogger(LoginInterceptor.class);
  14.  
  15.     // 身份认证、身份授权
  16.     @Override
  17.     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
  18.  
  19.         // 判断session
  20.         HttpSession session = request.getSession();
  21.         UserBase user = (UserBase) session.getAttribute("user");
  22.         boolean flag = false;
  23.         if (user != null) {
  24.             flag = true;
  25.         } else {
  26.             // 获取请求的url
  27.             String redirectUrl = request.getRequestURI();
  28.             session.setAttribute("redirectUrl", redirectUrl);
  29.             String bikeNo = request.getParameter("bikeNo");
  30.             session.setAttribute("bikeNo", bikeNo);
  31.             logger.info("请求的URL" + redirectUrl + bikeNo);
  32.             // 执行这里表示用户身份需要认证,跳转登陆页面
  33.             logger.info("跳转到登录页面:login.jsp");
  34.             request.getRequestDispatcher("/WEB-INF/bike/user/login.jsp").forward(request, response);
  35.         }
  36.         return flag;
  37.     }
  38.  
  39.     @Override
  40.     public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
  41.         logger.info("拦截器postHandle方法执行");
  42.     }
  43.  
  44.     @Override
  45.     public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
  46.         logger.info("拦截器afterCompletion方法执行");
  47.     }
  48. }
  49.  

回复 "登陆拦截器LoginInterceptor"

这儿你可以回复上面这条便签

captcha