有人可以透视JPA和Hibernate之间的区别。还是这些互补的概念可以一起使用?
bmw0128
问问题
4314 次
3 回答
7
2015 年更新:这是一个非常古老的问题,在过去的 6 年中发生了很多变化。如今,JPA API 的功能非常丰富,我建议使用 JPA,因为越来越多的工具和框架都与它保持一致。一个例子是 Spring Data JPA:它删除了许多常见任务的样板文件,并且非常高效:
http://projects.spring.io/spring-data-jpa/
原始答案:我会回应 cheng81 的评论,并投票支持使用普通的 Hibernate API。JPA 的功能集比 Hibernate 的要小,我认为没有理由仅仅因为它是一个“标准”就用“纯 JPA”来限制自己。
于 2009-01-02T05:12:38.323 回答
0
Hibernate 是一个非常好的解决方案,但是它的许可证 (GPL) 意味着它不能在某些项目中使用。
JPA 是一个规范,它支持包括 Hibernate 在内的一系列实现,但也支持 OpenJPA 和其他具有不同特性的产品。
如果您可以只使用 Hibernate,那么它可能是值得的,因为它成熟、稳定且性能良好。但是,如果您需要将持久性引擎合并到附带非 GPL 许可证的产品中,则需要走 JPA 路线(或为商业 Hibernate 许可证付费)。
于 2011-11-15T13:45:49.390 回答