一尘不染

区别Hibernate 3.5 / JPA 2.0

hibernate

到目前为止,我一直更喜欢直接使用Hibernate而不是JPA
1.0,因为JPA缺少我需要的一些重要功能,而Hibernate提供了这些功能:Criteria API,二级缓存,单向OneToMany和其他一些功能。

现在,随着JPA 2.0的出现以及JPA
1.0中最初缺少的所有新功能(http://en.wikibooks.org/wiki/Java_Persistence/What_is_new_in_JPA_2.0%3F),我想知道是否仍然需要直接使用Hibernate。

你怎么看?我无法使用JPA 2.0完成的Hibernate 3.5中还剩下什么?


阅读 224

收藏
2020-06-20

共1个答案

一尘不染

现在,随着JPA 2.0的出现以及JPA
1.0中最初缺少的所有新功能(http://en.wikibooks.org/wiki/Java_Persistence/What_is_new_in_JPA_2.0%3F),我想知道是否仍然需要直接使用Hibernate。

即使对于JPA 1.0,我也会推荐一种不同的方法:“在可能的地方使用JPA,在必须的地方使用Hibernate”。

你怎么看?我无法使用JPA 2.0完成的Hibernate 3.5中还剩下什么?

JPA
2.0非常丰富,我认为它是一项巨大的改进,现在使用标准化扩展所需要的许多东西已经标准化了)。

但你仍然可能需要在某些情况下,一些hibernate特定的扩展:自定义UserType,非标发生器,通过例如,查询@Formula@Index等有看第2.4节“Hibernate的注解扩展”更多的“例子”。

但是让我坚持,我建议您在可能的地方使用JPA,在必须的地方使用Hibernate(后面的部分将随着JPA 2.0的使用而变得更薄)。

2020-06-20