Spring Boot-定义拦截器(七)
2024-08-31 07:15:29
在web项目 我们常常使用拦截器做权限验证和登陆验证
1.创建一个拦截器实现类 标注@Componet
@Component
public class LoginInterceputer implements HandlerInterceptor {
/**
* 进入controller层之前拦截请求
* @param httpServletRequest
* @param httpServletResponse
* @param o 为函数对象
* @return
* @throws Exception
*/
@Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception { System.out.println(o);
System.out.println("进入controller之前拦截");
return true;
} @Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
System.out.println("--------------处理请求完成后视图渲染之前的处理操作---------------");
} @Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
System.out.println("---------------视图渲染之后的操作-------------------------0");
} }
2.通过javaconfig的方式进行拦截器配置
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Autowired
LoginInterceputer loginInterceputer;
@Override
public void addInterceptors(InterceptorRegistry registry) {
// 自定义拦截器,添加拦截路径和排除拦截路径
registry.addInterceptor(loginInterceputer).addPathPatterns(new String[]{"/**"}).excludePathPatterns(new String[]{"/login"});
}
}
最新文章
- POJ1274 The Perfect Stall[二分图最大匹配]
- Python安装时报缺少DLL的解决办法
- 一则JVM memory leak解决的过程
- jQuery HTML节点元素修改、追加的方法 html()、append()、prepend()、
- MFC下无法为空间添加变量解决
- 数据库性能优化之SQL语句优化
- 活动组件(五):一个activity的例子
- K2 Blackpearl开发技术要点(Part2)
- 教你50招提升ASP.NET性能(二十):认识你的循环
- Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理
- android 绘图
- Delphi调试DLL 不能调试 不能进入调试 注意!!!
- spring-mvc关键点掌握 high level
- Effective Modern C++ Item 27:重载universal references
- python常用数据结构
- three.js实现3D模型展示
- kubernetes-核心资源之Ingress
- Redis Index
- Ubuntu 安装 JDK8 的两种方式
- css颜色表示法