gpt4 book ai didi

java - 使用 JPA 时的项目 JAR 文件结构

转载 作者:搜寻专家 更新时间:2023-11-01 03:29:49 25 4
gpt4 key购买 nike

我不确定处理使用 JAR 文件共享到多个项目的 JPA 对象的最合适方法是什么。即,如果您有多个项目,它们都有一个 EmployeeContact 以及 Address 对象,并且您想将它们放在一个 JAR 文件中,如何做这个工作。即

员工.jar

   jpa/EMF.class
jpa/Employee.class
jpa/Contact.class
jpa/Address.class
jpa/Organisation.class
META-INF/persistence.xml

项目1

  src/jpa/EMF.java
src/jpa/BlogEntry.java
src/jpa/Comment.java
src/META-INF/persistence.xml
lib/Employee.jar

项目2

  src/jpa/EMF.java
src/jpa/Stock.java
src/jpa/Transaction.java
src/META-INF/persistence.xml
lib/Employee.jar

这是如何工作的,像上面那样有两个 persistence.xml 文件可以吗?即一个用于描述 Employee.jar 文件中的 JPA 类,另一个用于描述项目特定的 JPA 类?

此外,Employee.jar 文件不应指定 JDBC url,因为每个项目都将使用不同的数据库或模式。如果 JDBC 连接属性仅在项目 src/META-INF/persistence.xml 中指定,Employee.jar 类会选择这些设置吗?

最佳答案

How does this work, is it ok to have two persistence.xml files like above? ie One for describing the JPA classes in the Employee.jar file, and another one for the project specific JPA classes?

当然,如果您使用不同的 .jar 文件定义每个不同的持久性单元,则可以拥有多个 persistence.xml 文件。您的持久性提供者应该能够找出哪个类属于哪个持久性单元,并为每个类加载适当的配置文件。

当然,根据您使用的持久性提供程序以及您工作的环境,您可能会遇到更多麻烦,但这是另一个问题。

但总体思路保持不变,每个包含持久实体的 .jar 文件都应该使用 persistence.xml 文件将那组实体关联为持久单元classes/META-INF 目录。

问候,

关于java - 使用 JPA 时的项目 JAR 文件结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3507506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com