我们应该在基于Hibernate的应用程序中使用@ org.hibernate.annotations.Entity而不是@javax.persistence.Entity吗?
或者没有这样的规则吗?
答案 0 :(得分:7)
@org.hibernate.annotations.Entity
补充@javax.persistence.Entity
。
有关详细信息,请参阅此紧密相关的问题:Difference between JPA Entity and Hibernate Entity。如上所述,如果没有@org.hibernate.annotations.Entity
,则不应使用@javax.persistence.Entity
。 Hibernate注释将允许您为标准JPA中已定义的特性添加一些额外的特定于hibernate的功能。
JPA注释具有将代码与您正在使用的特定引擎分离的优点,而Hibernate注释为JPA标准注释添加了一些额外的功能/属性,如optimisticLock
。如果您需要使用这些属性,请仅使用@org.hibernate.annotations.Entity
。