springmvc 全局登陆 拦截器配置

最近在做一个管理系统,要求是首页是登陆界面 ,

我的DispatcherServlet servlet 是过滤所有的请求

<!– Map all requests to the DispatcherServlet for handling –><servlet-mapping><servlet-name>DispatcherServlet</servlet-name><url-pattern>/*</url-pattern></servlet-mapping> @RequestMapping(value = {"","/","index.html"})public String index() {return "index";}

上面的代码是为了设置欢迎页面

在首页的登陆界面中,form 表单的地址是 "/login"

以上是我的项目的背景,

下面是正式的登陆代码实现

我们对全局的拦截登陆

public class GlobalLoginInterceptor implements HandlerInterceptor { pblic boolean preHandle(HttpServletRequest request,HttpServletResponse response, Object handler) throws Exception {String requesturi = request.getRequestURI();String contextPath = request.getContextPath();String url = requesturi.substring(contextPath.length());//当所访问的地址是首页,或者是 登陆表彰的form acion 路径时,我们不对他进行拦截if(url.endsWith("/")||url.endsWith("index.html")||url.endsWith("login")){return true;}User attribute = (User) request.getSession().getAttribute("user");// 判断是否有Session ,如果不存在,则跳转到登陆页面if (attribute == null) {response.sendRedirect(contextPath+"/index.html");// request.getRequestDispatcher("/").forward(request,// response);return true;}return true;} public void postHandle(HttpServletRequest request,HttpServletResponse response, Object handler,ModelAndView modelAndView) throws Exception {}public void afterCompletion(HttpServletRequest request,HttpServletResponse response, Object handler, Exception ex)throws Exception {}}

以上是我主要的拦截核心代码,如有不正确的,可能给我留言,谢谢。

版权声明:本文为博主原创文章,,未经博主允许不得转载。

一个人,一条路,人在途中,心随景动,从起点,

springmvc 全局登陆 拦截器配置

相关文章:

你感兴趣的文章:

标签云: