springboot-登录拦截器
2024-09-25 22:13:05
小伙伴们大家好,今天给大家分享一个简单的springboot版登录拦截器
首先我们需要在springboot的启动类中让它实现WebMvcConfigurer 这个接口
比如:
public class springApplication implements WebMvcConfigurer{ }
然后在里面重写 addInterceptors方法
@Override
public void addInterceptors(InterceptorRegistry registry) { }
然后在里面添加一个拦截器
@Override
public void addInterceptors(InterceptorRegistry registry) {
//添加拦截器并过滤掉登录的请求
String[] exAdmin = new String[] { "/admin/login", "/admin/doLogin" };
registry.addInterceptor(getAdminInterceptor()).addPathPatterns("/admin/**").excludePathPatterns(exAdmin); }
上面数组中为过滤掉的路径,意思就是只要你的请求是这个路径那么我就不进入拦截器里面,比如说在登录的时候就不需要进行拦截
这个拦截器的拦截规则为:/admin/** 意思是只要是admin为前缀的请求,都进行拦截。
public class AdminInterceptor implements HandlerInterceptor {
@Autowired
HttpSession session; @Override
public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object o) throws Exception {
Admin admin = (Admin)session.getAttribute("Admin"); //获取登陆者的信息
if (admin != null){ // 如果当前人没有登录就不能过这个拦截器,如果已经登录就可以过
return true;
10 }
return false;
}
}
在拦截器中,我们需要让这个拦截器实现 HandlerInterceptor 接口
再重写里面的preHandle方法 具体的拦截规则可以在里面制定,本人只是简单的制定的如果登录就放行,没有登录就不放行。
朋友们有问题可以提问,没有问题关注一下可好,谢谢
最新文章
- Java线程新特征——Java并发库
- [转]android 获取视频帧
- CCF 201612-2	火车购票 (暴力)
- 在collection view中加入 NavigationController问题
- android82 启动Actvity和Activity的生命周期
- altium designer不经过原理图直接在空白pcb上加封装然后画线
- std::map的insert和下标[]访问
- Windows 2003】利用域&;&;组策略自动部署软件
- NodeJS初介
- H5直播避坑指南
- 菜鸟先飞C#学习总结(一)
- 获取安卓应用APK包名的方法
- 通过Mybatis原始Dao来实现curd操作
- MVC 验证规则扩展(当RoleID 属性值为A,B 时,Email 属性必填)
- python chardet
- 给pdf添加导航目录
- Velocity之初印象
- 关于vue的基础概念
- requestAnimationFrame 完美兼容封装
- OE中的bitbake使用