为了保持简短和甜蜜:
有hibernate-commons-annotations 4.1.0-Final和hibernate-annotations 3.5.6-Final。
我是个笨蛋,它们之间有什么区别,我是不是都需要它们?
尝试“避免”JPA,我的意思是使用嵌入在Hibernate中的JPA2.0标准。
谢谢!
发布于 2012-06-24 02:03:07
以前,hibernate-annotations是从hibernate核心发布和版本化的。但从3.5版开始,hibernate核心就包含了它。出于某种原因,它仍然从3.5.0发布到3.5.6,但您不再需要它了。
至于hibernate-commons- annotations,它是一个实用项目,由基于注解的hibernate子项目使用。它被其他hibernate项目使用,如hibernate-search,因此作为单独的项目进行维护,并且它是hibernate-core v3.6.0及更高版本的编译时依赖项。
Source 1 Source 2
发布于 2012-06-24 02:19:01
Hibernate Commons注解是“用于注解处理的实用程序项目”,例如here。它不包含Hibernate的普通用户应该使用的API。
Hibernate注解包含持久性映射注解和相关代码。如今,它被合并到Hibernate内核中。
如果你真的想避免JPA (1/2),不使用javax.persistence包或它的子包中的类就可以很容易地做到这一点。如果您想要相反的结果,请尽可能使用javax.persistence并避免使用org.hibernate包。
可以从http://docs.jboss.org/hibernate/orm/4.1/quickstart/en-US/html_single/中找到开始使用Hibernate的好指南。它还告诉我们哪些库总是需要的,哪些库是可选的。
Reference documentation包含了很多关于使用JPA代替过时的遗留Hibernate注解的建议。
https://stackoverflow.com/questions/11171154
复制相似问题