我正在开发一个spring-boot rest服务,它包含两个过滤器(实现javax.servlet.Filter
接口)。虽然一个过滤器应该适用于所有网址格式,但我希望将第二个过滤器配置为仅应用于网址格式/api/*
。
目前,我正在使用以下代码执行此操作:
@SpringBootApplication
public class Application
{
public static void main(String[] args)
{
SpringApplication.run(Application.class, args);
}
@Bean
public FilterRegistrationBean filterRegistrationBean() {
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
SecurityFilter securityFilter = new SecurityFilter();
registrationBean.setFilter(securityFilter);
registrationBean.addUrlPatterns("/api/*");
return registrationBean;
}
}
但我的问题是,如果有一个注释要做同样的事情,考虑到有用于设置过滤器顺序的注释(@Order(..)
)。我尝试过使用javax.servlet.annotation.WebFilter
,但是spring-boot似乎忽略了这个注释。