如何解决JPA如何找到要调用的具体实现?
我正在一个项目中,我必须抽象出接口并将其与具体实现分开。例如,JPA只是界面,在后台,它调用了具体的实现之一,例如Hibernate库。所以我的问题是它如何知道调用哪个实现。从到目前为止的研究中,我了解到,人们只需要将Hibernate添加为依赖项,而不必担心拼凑而成。它是如何工作的?
解决方法
您必须在peristence.xml中定义持久性提供程序,以指定要使用的实现。
此代码使用Hibernate作为实现。
<persistence-unit name="sampleEmf" transaction-type="JTA">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
...
</persistence-unit>
此人使用EclipseLink作为实现。
<persistence-unit name="sampleEmf" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
...
</persistence-unit>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。