在正常的Spring MVC 框架中使用Filter時需要在XML文件中配置
<filter> <filter-name>xxxFilter</filter-name> <filter-class>xx.xx.xx.xx.xxxFilter</filter-class> </filter> <filter-mapping> <filter-name>xxxFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
但是在Spring boot 中拋棄了XML配置,所以要在啟動主函數中添加
@Bean
public FilterRegistrationBean filterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
WeChatFilter weChatFilter = new WeChatFilter();
registrationBean.setFilter(weChatFilter);
List<String> urlPatterns = new ArrayList<String>();
urlPatterns.add("/validate/*");
registrationBean.setUrlPatterns(urlPatterns);
return registrationBean;
}
補充:
如果想要在Filter中執行Services方法,要在初始化Filter中執行下圖方法(因為Filter執行順序提前與Services)