Java - JPA - 为什么我们在 persistence.xml 文件中需要多个 <persistence-unit> 标签?

标签 java jpa

我正在学习 JPA。我阅读了有关 persistence.xml 文件的信息。它可以包含多个 <persistence-unit><persistence> 下标记标签。

据我所知,<persistence-unit>定义:

  • 数据库连接设置
  • 类(实体类)、jar文件和映射文件
  • 供应商信息

那么为什么我们需要将应用程序的实体分组到不同的 <persistence-unit> 中? .任何应用程序的所有实体都应该在一个 <persistence-unit> 中标签。

我认为我们需要不止一个的唯一原因 <persistence-unit>当我们需要与多个数据存储建立连接时。

Q1。当我们需要一个以上时,还有其他情况吗 <persistence-unit>标签?

最佳答案

一个持久化单元代表一个数据存储。您的问题有点像您希望您可以拥有多个数据存储来存储完全相同的数据。这是没有意义的。的方式<persistence-unit>作品非常有意义。为唯一且独立的数据存储定义数据库连接设置、实体映射等。您可以添加更多,但它们将彼此完全独立。如果您想要或期望将多个数据存储相互链接,则应在较低级别(即在数据存储本身中)寻求解决方案。

关于Java - JPA - 为什么我们在 persistence.xml 文件中需要多个 <persistence-unit> 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2586763/

相关文章:

java - JAX-RS - 没有根节点的 JSON

jakarta-ee - 如何将 JPA 和 JTA 与事务管理器一起使用?

java - 如何模拟EntityManager?

java - Java 8 流是原子的吗?

java - 在 BroadcastReceiver 类中打开 hibernate 的 Android 设备

hibernate - 扩展表的 JPA 映射 View

java - native 查询仅在 H2 数据库中导致错误

java - JPA OneToMany 和 ManyToOne 之间的关系

java - Java 中等效的复合应用程序框架

java - JSF 文本区域和换行符,存储在服务器端的是什么?