在Spring Boot中为Servlet配置添加过滤器

我正在使用spring-boot-starter-web捆绑包来构建一个基于spring-batch-admin的webapp。

@Configuration

@EnableAutoConfiguration(exclude = { BatchAutoConfiguration.class, DataSourceAutoConfiguration.class, WebMvcAutoConfiguration.class })

@Import(MainConfiguration.class)

@EnableTransactionManagement

public class BatchAdmin extends SpringBoot" title="SpringBoot">SpringBootServletInitializer {

public static void main(String[] args) {

SpringApplication.run(BatchAdmin.class, args);

}

// ...

}

@Configuration

@ComponentScan("com.company.package*")

@Import({ ServletConfiguration.class, WebappConfiguration.class })

public class MainConfiguration {}

@Configuration

@ImportResource("classpath:/org/springframework/batch/admin/web/resources/servlet-config.xml")

public class ServletConfiguration {}

@Configuration

@ImportResource({ "classpath:/org/springframework/batch/admin/web/resources/webapp-config.xml","classpath:persistence-context.xml" })

public class WebappConfiguration {}

如何使用Java配置样式将此过滤器添加到Servlet上下文?

<filter-mapping>

<filter-name>hiddenHttpMethodFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

回答:

有时候(但不是经常),查阅文档比询问SO社区要快。

根据官方的spring-boot文档,我必须将以下bean定义添加到BatchAdmin类中。

@Bean

public Filter hiddenHttpMethodFilter() {

HiddenHttpMethodFilter filter = new HiddenHttpMethodFilter();

return filter;

}

以上是 在Spring Boot中为Servlet配置添加过滤器 的全部内容, 来源链接: utcz.com/qa/399712.html

回到顶部