java - 如何在 Spring 上通过 OpenEntityManagerInViewFilter 处理多个 Entitymanager

标签 java spring hibernate jpa spring-data

我查看了 OpenEntityManagerInViewFilter 的代码,我注意到它会查找在我的 Spring 上下文中定义的一个entityManagerFactoryBeanName。我确实有一个 setter 来调整我想要的不同的 bean 名称大小写。

但假设我的应用程序上有多个 EntityManager,每个定义的数据源对应一个。 Spring 可以定义存储库来引导这些 EntityManager 的数据,但是我如何通知 OpenEntityManagerInViewFilter 有关此行为的信息?

代码似乎只准备好按时间处理一个 EntityManager,因此我无法为应用程序上的不同存储库保留惰性数据。

有什么办法可以设置吗?如果有任何想法,我将不胜感激。

OpenEntityManagerInViewFilter源代码: http://grepcode.com/file/repo1.maven.org/maven2/org.springframework/spring-orm/4.2.0.RELEASE/org/springframework/orm/jpa/support/OpenEntityManagerInViewFilter.java#OpenEntityManagerInViewFilter

干杯,

最佳答案

在查看了许多代码之后,我发现我们需要使用数据源为每个实体管理器创建一个过滤器。因此,如果我们有一个上下文根应用程序,我们将为此上下文应用许多过滤器。

关于java - 如何在 Spring 上通过 OpenEntityManagerInViewFilter 处理多个 Entitymanager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33512371/

相关文章:

java - Arrays.asList 也用于 map ?

java - 在 WebLogic 12.1.3 上部署应用程序时出现 "The Struts dispatcher cannot be found"错误

java - 第一次使用 mockito

spring - 为什么部署在 Docker 容器上的 Spring Cloud Netflix 应用需要显式设置 eureka.instance.hostname?

java - 通过 @OneToMany 和 @ManyToOne 使用 JPA hibernate 获得无限递归

mysql - 使用 hibernate 保存或更新包含日期字段的实体的操作会减去一天

arrays - 如何在 Hibernate 中使用 Postgres 数组 "contains"条件?

java - 将字符串中的 id 值替换为 HashMap 中存在的对应名称值

java - 在没有日志文件的情况下在 Spring Boot Admin 中公开日志

java - 关于jsf bean注入(inject)spring bean的一个问题