我有一个下面提供的 XML
格式的 Spring 过滤器,
<filter>
<filter-name>SpringOpenEntityManagerInViewFilter</filter-name>
<filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>SpringOpenEntityManagerInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
我将其作为 XML
文件加载到类的顶部。是否可以编写 Java 来代替 XML 定义?
最佳答案
对于 Spring,您应该定义一个扩展 AbstractDispatcherServletInitializer
的类,并向其中添加以下行
@Override
protected Filter[] getServletFilters() {
return new Filter[] {
new OpenEntityManagerInViewFilter();
};
}
您可以从 Spring Docs 获取有关 Java 代码中的过滤器的更多信息 https://docs.spring.io/spring/docs/4.1.1.RELEASE/spring-framework-reference/html/mvc.html#mvc-container-config
关于java - Spring过滤器作为基于Java注释的bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46112936/