springBoot中使用拦截器只需要两步:
1、实现HandleInterceptor接口(jdk1.8中该接口中方法被default修饰,不会提示@Override)
2、继承WebMvcConfigurerAdapter(jdk1.8是实现WebMvcConfigurer接口)
一、编写Intercerptor实现HandleInterceptor;
package com.springboot.business.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import com.springboot.business.interceptor.RoutsInterceptor;
//配置类依赖注入
@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
//拦截的地址
//"/demo/**"表示路径为demo开始的全部拦截
String[] addPathPatterns = {
"/demo/**"
};
registry.addInterceptor(new RoutsInterceptor()).addPathPatterns(addPathPatterns);
}
}
二、编写拦截器的注册配置;
package com.springboot.business.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import com.springboot.business.interceptor.RoutsInterceptor;
//配置类依赖注入
@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
//拦截的 地址
String[] addPathPatterns = {
"/demo/**"
};
registry.addInterceptor(new RoutsInterceptor()).addPathPatterns(addPathPatterns);
}
}
三、测试;
访问项目的该方法,重定向到百度首页