创建一个JPA提供程序

5

有人知道如何创建自己的JPA提供者吗?我正在考虑制作一个定制的JPA提供者,可以与我们使用的SOAP Web服务进行接口。然而,我似乎找不到任何描述如何创建自己的JPA提供者的文档。我应该从哪里开始寻找?

1个回答

10
你需要实现 javax.persistence.spi.PersistenceProvider 接口,并在持久化单元声明中使用 provider 元素指定你的实现:
<persistence-unit name="myUnit">
  <provider>com.mypackage.CustomPersistenceProvider</provider>
  ...
</persistence-unit>

这为您提供了创建自己的 EntityManagerFactory,从而创建EntityManager的入口点。

但是在这里最重要的问题是,为什么您想要做这样的事情?如果这与您的Lazy Hibernate JPA using SOAP问题有关,则可能不是正确的方法。


这就是我在寻找的答案。它肯定与其他问题有关。你认为通货膨胀水平是最好的方法吗?我应该开一个新话题讨论吗? - User1
通货膨胀水平的方法有点容易,如果您可以依赖客户提供适当的方法;但基于代理的方法也应该可以正常工作。这是你在这里尝试做的吗?除非客户直接使用JPA(在这种情况下,我不确定整个SOAP代理的事情如何发挥作用),否则您不需要自定义JPA来使用代理。相反,当客户端请求您的服务以获取实体时,您返回一个代理,该代理在需要时调用同一(或不同)服务以检索缺失的数据。 - ChssPly76

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接