Han*_*etz 9 jpa eclipselink persistence-unit
我使用JPA持久性作为我的数据模型,使用Eclipselink作为持久性提供程序.我有一个模块化(OSGi)应用程序,其中一个模块包含标准数据模型和一个自动包含包中所有实体的持久性单元.持久性提供程序位于另一个模块中,该模块运行良好.
现在我想要第三个模块将一些实体添加到持久性单元.我怎么做?我找到了这个解决方案,这似乎是Spring特有的,我没有使用它.该方法的摘要是编写一个后处理器,该处理器挂钩到持久性单元处理并手动合并文件中的<class>条目persistence.xml.
是否可以合并持久性单元?任何人都可以建议一个解决方法吗?
首先,这是一个关于Dynamic-JPA的链接,它们提供了一种动态更新实体的方法.我会首先探讨这个选项.
这是一个关于在不使用persistence.xml文件的情况下以编程方式创建持久性单元的链接(您无法真正做到这一点,但答案提供了对该问题的一些见解).philk提供了有关如何从persistence.xml文件中删除提供程序的建议.如果您遵循此方法,则可以将实体组合到特定的持久性单元中.
"在Hibernate的旧时代,我可以创建一个会话并动态添加我的类.似乎从未使它成为SUN的JPA规范.但是我已经从persistence.xml中完全删除了提供程序并将其交给它EL使用EMF的属性.这似乎工作正常.在persistence.xml中唯一剩下的就是类的规范.我想在EL中公开解析类名的方法并不难.为它创建ClassDescriptor作为EL JPA Provider的公共方法."
最后,我们来到hackish解决方案,已经建议做,只需在事后编辑你的persistence.xml文件.我相信这会起作用(虽然,我没有尝试过),但绝对是一种选择.
| 归档时间: |
|
| 查看次数: |
6506 次 |
| 最近记录: |