Springboot使用HandlerInterceptor拦截用户登录
程序员文章站
2022-05-07 19:01:56
拦截器:@Aspect@Componentpublic class LoginInterceptor implements HandlerInterceptor { private Logger logger = LoggerFactory.getLogger(LoginInterceptor.class); @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse...
拦截器:
@Aspect
@Component
public class LoginInterceptor implements HandlerInterceptor {
private Logger logger = LoggerFactory.getLogger(LoginInterceptor.class);
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("-----------------preHandle");
UserInfo user = (UserInfo)request.getSession().getAttribute(Constant.USER_SESSION_KEY);
logger.info(request.getRequestURI().toString());
if (user == null || user.equals("")) {
response.sendRedirect("/login");
logger.info("请先登录");
return false;
}
return true;
}
}
Config:
@Configuration
public class WebConfigurer implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LoginInterceptor()).
addPathPatterns("/**")
.excludePathPatterns("/login")
.excludePathPatterns("/static/**");
}
}
如果是新项目的话,把aop的maven加进去:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
本文地址:https://blog.csdn.net/xianyun1992/article/details/107270652
推荐阅读
-
怎么使用户能访问ftp,但不能远程登录
-
linuxmint使用root用户登录后声卡没有声音的解决方法
-
SharePoint2013 以其他用户登录和修改AD域用户密码的功能使用介绍
-
Spring项目整合成SpringBoot的简单登录拦截Demo
-
Winform中简单使用MD5加密用户登录密码
-
使用Oracle数据库登录时被告知用户被锁怎么解决
-
SpringCloud-使用路由网关的服务过滤功能-拦截登录前是否有token为例
-
Springboot+SpringSecurity+JWT实现用户登录和权限认证示例
-
php使用cookie保存用户登录的用户名实例
-
php使用cookie保存登录用户名的方法