这是基于springboot框架的,实现拦截器功能的讲解,有不对的地方,下方评论留言,互相学习。最底下有码云地址,不用一个个敲
一、学习目标 (这里用的是springboot版本是2.X,一些方法上有一条杠,只是认为这些方法被淘汰了,可以用的其实)
1、配置用户访问拦截
2、配置静态资源访问拦截
3、实现指定页面跳转
4、实现用户登入判断(后长时间不操作session失效)
二、配置用户访问拦截
我们需要新建类 MyWebMvcConfigurationSupport 继承 WebMvcConfigurationSupport 因为 WebMvcConfigurationSupport 是配置类,项目启动便会立即加载(下图证明) 需要申明这个类是配置类 @Configuration 这样就能成功的重写里面的方法
简单看一下继承的类,里面实现用户访问拦截的方法是空的,所以我们根据自己的需求,重写里面的方法 这里重写addInterceptors方法
都有详细注释,我简单说一下,addPathPatterns是添加自己的规则,这里是指拦截所有请求,excludePathPatterns 是指 哪些访问可以被忽略我这里忽略了跟路径,和登录的请求 根据需求可以写很多参数
二、配置静态资源访问拦截
同样在这个类里面重写 这里重写 addResourceHandlers 方法
三、实现指定页面跳转
同样重写 addViewControllers 方法 添加自己的规则 这里的意思是说 如果访问的是根路径,那么跳转到login 就是 localhost:8080 那么跳转到localhost:8080/login
四、实现用户登入判断(后长时间不操作session失效)
实现 HandlerInterceptor 接口
重写 preHandle 方法
下面是简单的例子 如果访问login方法 session里面放入信息
每次请求看看session里面信息有没有 如果存在则放行 如果不存在那么 跳转
码云下载
https://gitee.com/lw97/Interceptor.git
对了,不用谢,我的名字叫雷锋!