在Springboot项目中, 拦截器也是开发中常用手段,要来做登陆验证、性能检查、日志记录等。写个例子看看,一个拦截器、一个配置类、一个拦截器要拦截的类。
第一拦截器,这个拦截器要实现HandlerInterceptor接口,这个接口里有四大方法,preHandle是在请求controllor前调用,postHandler在调用Controller方法之后、视图渲染之前调用,afterCompletion是在渲染视图完成之后使用,afterConcurrentHandlingStarted方法用来处理异步请求。
在拦截器配置类class上使用要注解@Configuration,这里要实现接口WebMvcConfigurer。
老版本呢是继承WebMvcConfigurerAdapter,不过新版本已经放弃了,推荐用上面的方式。
重写addInterceptors方法,这个方法里呢要配置两项,一个是拦截器,一个是拦截器的URL。 例子里指明了拦截器Test1Interceptor,拦截的url "/hello/**"。
写一个控制类,接下来就可以请求了,请求被正确响应。
控制台也正常输出了拦截器打印信息。
测试成功!说明各项配置都是正确的,没毛病!