0
点赞
收藏
分享

微信扫一扫

权限拦截器

zhoulujun 2022-01-26 阅读 49

判断是否登录,登录则放行。没登录则重定向登录界面。

创建拦截器
AccessInterceptor.java

public class AccessInterceptor implements HandlerInterceptor {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //登录权限拦截器: 从Session中检查用户的登录状态,如果登录就放行
        //如果没登录就跳转登录页
        //取出用户信息
        String loginuser = (String)request.getSession().getAttribute("loginuser");
        System.out.println("当前用户"+loginuser);
        if(loginuser == null){
            //session中没有登录用户信息,当前用户还没登录
            //发起重定向,跳转登录页面
            System.out.println("没放行");
            String path = request.getContextPath()+"/user/login.do";
            response.sendRedirect(path);
            //返回false拦截
            return false;
        }
        System.out.println("已经登录,放行");
        return true;
    }
}

添加拦截器到界面

@Override
    public void addInterceptors(InterceptorRegistry registry) {
        //创建DemoInterceptor对象,注册到SpringMVC中
        //addPathPatterns()方法到作用是约定拦截器到URL
        //注册一个拦截器,在请求/home/index.do时候执行拦截器到功能
        registry.addInterceptor(new DemoInterceptor()).addPathPatterns("/home/index.do");
        registry.addInterceptor(new AccessInterceptor()).addPathPatterns("/home/index.do");
    }
举报

相关推荐

0 条评论