首页 > 编程语言 > 详细

spring拦截器

时间:2016-08-23 14:53:38      阅读:231      评论:0      收藏:0      [点我收藏+]

package com.shoufubang.web.interceptor;

import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import org.springframework.web.servlet.HandlerInterceptor; 
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; 
 
 
public class MyInterceptor extends HandlerInterceptorAdapter {
  
   @Override
   public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
                              Object handler) throws Exception {
         // 获得请求路径的uri
         String uri = request.getRequestURI();

         // 判断路径是登录验证,是的话执行Controller中定义的方法
         if(uri.endsWith("/login")) {
             return true;
         }
         if(uri.endsWith("/companylogin")) {
             return true;
         }

         // 进入登录页面,判断session中是否值,有的话继续执行
             if(request.getSession() != null && request.getSession().getAttribute("adminUser") != null) {
               return true;
             }
             if(request.getSession() != null && request.getSession().getAttribute("adminCompany") != null) {
               return true;
             }
        

         // 其他情况判断session中是否有key,有的话继续用户的操作
         if(request.getSession() != null && request.getSession().getAttribute("adminUser") != null) {
             return true;
         }
         if(request.getSession() != null && request.getSession().getAttribute("adminCompany") != null) {
             return true;
         }

         // 以上所有情况都不成立则进入登录页面
         response.sendRedirect(request.getContextPath() + "/login.jsp");
         return false;
   }
  
 }

个人感觉这个拦截器还是比较全面的

spring拦截器

原文:http://www.cnblogs.com/dengheng/p/5798954.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!