Spring Boot 中是否有针对 Filter
类(针对 Web 应用程序)的注释?也许@Filter
?
我想在我的项目中添加自定义过滤器。
The Spring Boot Reference Guide提到关于
FilterRegistrationBean
,但我不知道如何使用它。
最佳答案
如果您想设置第三方过滤器,可以使用FilterRegistrationBean
。
例如,相当于web.xml:
<filter>
<filter-name>SomeFilter</filter-name>
<filter-class>com.somecompany.SomeFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>SomeFilter</filter-name>
<url-pattern>/url/*</url-pattern>
<init-param>
<param-name>paramName</param-name>
<param-value>paramValue</param-value>
</init-param>
</filter-mapping>
这些将是您的 @Configuration
文件中的两个 bean:
@Bean
public FilterRegistrationBean someFilterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(someFilter());
registration.addUrlPatterns("/url/*");
registration.addInitParameter("paramName", "paramValue");
registration.setName("someFilter");
registration.setOrder(1);
return registration;
}
public Filter someFilter() {
return new SomeFilter();
}
以上是使用Spring Boot 1.2.3测试的。
关于java - 如何在 Spring Boot 中添加过滤器类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45941847/