内容摘自stackoverflow.url如下:
http://stackoverflow.com/questions/9881611/whats-the-difference-between-jpa-and-hibernate
As you state JPA is just a specification, meaning there is no implementation. You can annotate your classes as much as you would like with JPA annotations, however without an implementation nothing will happen. Think of JPA as the guidelines that must be followed or an interface, while Hibernate's JPA implementation is code that meets the API as defined by the JPA specification and provides the under the hood functionality.
When you use Hibernate with JPA you are actually using the Hibernate JPA implementation. The benefit of this is that you can swap out Hibernate's implementation of JPA for another implementation of the JPA specification. When you use straight Hibernate you are locking into the implementation because other ORMs may use different methods/configurations and annotations, therefore you cannot just switch over to another ORM.
本文解释了Java持久化API (JPA) 和Hibernate之间的区别。JPA作为一个规范,定义了一套标准注解和API用于Java应用程序的数据持久化,而Hibernate则是JPA的一种实现,提供了具体的实现细节和技术支持。使用Hibernate JPA实现时,可以灵活替换其他符合JPA规范的实现。

被折叠的 条评论
为什么被折叠?



