Springboot 拦截器配置(登录拦截)
Springboot 拦截器配置(登录拦截)
注意这里环境为springboot为2.1版本
1.编写拦截器实现类,实现接口 HandlerInterceptor,
重写里面需要的三个比较常用的方法,实现自己的业务逻辑代码
(就是自己拦截器拦截时做什么处理)
package com.*.*.interceptor;import java.io.IOException;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import com.*.*.*.User;/*** * * @Package: com.*.*.interceptor * @ClassName: AdminInterceptor * @Description:拦截器* @author: zk* @date: 2019年9月19日 下午2:20:57*/ public class AdminInterceptor implements HandlerInterceptor {/*** 在请求处理之前进行调用(Controller方法调用之前)*/@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { // System.out.println("执行了TestInterceptor的preHandle方法");try {//统一拦截(查询当前session是否存在user)(这里user会在每次登陆成功后,写入session)User user=(User)request.getSession().getAttribute("USER");if(user!=null){return true;}response.sendRedirect(request.getContextPath()+"你的登陆页地址");} catch (IOException e) {e.printStackTrace();}return false;//如果设置为false时,被请求时,拦截器执行到此处将不会继续操作//如果设置为true时,请求将会继续执行后面的操作 }/*** 请求处理之后进行调用,但是在视图被渲染之前(Controller方法调用之后)*/@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) { // System.out.println("执行了TestInterceptor的postHandle方法"); }/*** 在整个请求结束之后被调用,也就是在DispatcherServlet 渲染了对应的视图之后执行(主要是用于进行资源清理工作)*/@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) { // System.out.println("执行了TestInterceptor的afterCompletion方法"); }}
2.编写拦截器配置文件类并继承 WebMvcConfigurer类,并重写其中的方法 addInterceptors并且在主类上加上注解 @Configuration
package com.*.*.config;import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import com.*.*.interceptor.AdminInterceptor;/*** * * @Package: com.*.*.config * @ClassName: LoginConfig * @Description:拦截器配置* @author: zk* @date: 2019年9月19日 下午2:18:35*/ @Configuration public class LoginConfig implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {//注册TestInterceptor拦截器InterceptorRegistration registration = registry.addInterceptor(new AdminInterceptor());registration.addPathPatterns("/**"); //所有路径都被拦截registration.excludePathPatterns( //添加不拦截路径"你的登陆路径", //登录"/**/*.html", //html静态资源"/**/*.js", //js静态资源"/**/*.css", //css静态资源"/**/*.woff","/**/*.ttf"); } }
这里不被拦截的路径,根据自己需求进行添加,上述主要是关于静态资源方面的
到这里后端拦截已经完成
我的项目是前后端分离的,前端使用的LayuiAdmin,借助了LayuiAdmin的前端拦截器进行相关html页面的拦截
结束
转载于:https://www.cnblogs.com/zktww/p/11550891.html
Springboot 拦截器配置(登录拦截)相关推荐
- java登陆拦截器_SpringBoot拦截器实现登录拦截
SpringBoot拦截器可以做什么 可以对URL路径进行拦截,可以用于权限验证.解决乱码.操作日志记录.性能监控.异常处理等. SpringBoot拦截器实现登录拦截 pom.xml:<?xm ...
- java 登录拦截器_springMVC 拦截器-用户登录拦截实战
各位小伙伴 咱们继续学习新知识 今天要分享的就是 拦截器 不知道小伙伴们平时上网的时候有没有注意到,尤其是上网购物的时候,不登录账号,就无法访问一些功能页面,比如你不登录账号,就没法查看购物车里面有什 ...
- Spring拦截器实现登录拦截
hello,大家好,好久没发文章了,之前一段时间因为没遇到太好的内容.昨天研究了下登录时Spring拦截器实现功能,今天和大家分享下,有问题的话欢迎大家指出与批评,好,下面进入正题. 说起拦截器 ...
- Spring拦截器进行登录拦截
拦截器: public class LoginInterceptor implements HandlerInterceptor{private static final Log log = LogF ...
- SpringBoot拦截器配置
SpringBoot拦截器配置 自定义拦截器: com.example.mybatis2018.interceptor.MyInterCeptor package com.example.mybati ...
- vue 请求拦截器配置
按如下步骤进行 1.request.js内容:http request请求拦截器和http response服务器响应拦截器配置 请求拦截器有一个Authorization认证,判断登录状态之后再决定 ...
- uniapp 拦截器-未登录跳转到登陆页面
uniapp实现未登陆拦截 效果: 拦截器前 加了拦截器后 建一个interceptor.js //页面白名单const whiteList = ['/user-pages/bindPhone',]f ...
- springboot 添加拦截器之后中文乱码_spring boot 2.x 添加拦截器配置未生效的问题
背景: 今天有一个需求需要拦截除登录相关请求以外的所有请求,并查看request 中是否包含指定的信息,而自然就想到了使用拦截器就可以轻松实现 编写拦截器,获取请求头信息中的test,并打印出来 @C ...
- springboot 添加拦截器之后中文乱码_springboot中配置了拦截器后,拦截器无效的解决方案之一...
springboot的启动类xxxApplication不能扫描到拦截器配置类,可加上@ComponentScan(basePackages={"com.maya.common"} ...
- springboot中配置了拦截器后,拦截器无效的解决方案之一
springboot中配置了拦截器后,拦截器无效的解决方案之一 参考文章: (1)springboot中配置了拦截器后,拦截器无效的解决方案之一 (2)https://www.cnblogs.com/ ...
最新文章
- JDK 14 里的调试神器了解一下?
- HTTP的四种请求方法
- WCF 4.0 REST服务解决Method Not Allowed错误
- Vtk出现Generic Warning时
- 计算机考研英语什么时候考试,计算机考研:早期复习三大注意事项
- thinkPHP 阿里云OSS 上传文件、直接下载
- 前端向后端发送请求,后端返回的一个值的请求的ajax.get();方法
- Linux 文件系统 软/硬链接文件
- 物联网技术如何驱动大数据
- java8 新特性实践
- macOS sierra 10.12 CORE Keygen系列注册机修复工具 CORE Patcher
- Lumerical官方案例、FDTD时域有限差分法仿真学习(一)——闪耀光栅(Blazed grating)
- [Google标准文档]如何做好代码评审
- N阶行列式计算(JAVA)
- VBA批量OCR识别提取身份证照片信息_OCR车牌识别系统实现停车场智能停车管理
- paTJPSb桌趴缀岳凳钟涸
- mysql 语法大全
- 到底要不要孩子学习机器人编程
- IDEA GoLand 问题 Contents have differences only in line separators
- 白山搜索引擎优化收费_百度搜索引擎优化收费标准
热门文章
- mysql identity_insert_由MYSQL SET IDENTITY_INSERT tablename ON;准确方法
- python时间序列如何拟合曲线_以“datetime”格式拟合时间序列的曲线?
- python dict下标_牛鹭学院:必须掌握的Python数据结构知识
- confluence统计_【漏洞预警】confluence远程代码执行漏洞(CVE-2019-3396)
- STL-vector容器
- opencv人脸关键点生成掩膜并替换
- tensorflow:卷积函数----tf.nn.conv2d
- Caffe学习系列(13):数据可视化环境(python接口)配置 jupyter notebook
- 2021-08-15 Servlet Properties 读取资源
- vba commondialog控件添加不上_MyVBA加载宏——添加自定义菜单03——功能分析