一,自定义拦截器
继承WebMvcConfigurerAdapter ,然后重写父类方法
@Configuration //声明这是一个配置
public class MyInterceptor extends WebMvcConfigurerAdapter {
public void addInterceptors(InterceptorRegistry registry) {
HandlerInterceptor inter = new HandlerInterceptor() {
public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception {
System.out.println("自定义拦截器preHandle----------");
return true;
}
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
throws Exception {
System.out.println("自定义拦截器postHandle----------");
}
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
System.out.println("自定义拦截器afterCompletion----------");
}
};
registry.addInterceptor(inter).addPathPatterns("/**");
}
}
启动类,配置拦截器包扫描
@SpringBootApplication(scanBasePackages= {"com.yu.controller","com.yu.interceptor"}) //组合注解
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
测试
@EnableAutoConfiguration //启用自动配置
@Controller
public class TestController {
@RequestMapping("/hello")
@ResponseBody
public String requestHello() {
return "你好";
}
}