一.切換到Database Explorer 後,選擇表後點 Hibernate Reverse Engineering,然後就出來下邊這個提示信息.點ok後生成不了文件,或者生成了文件,文件內部會報錯。
This wizard generates Hibernate3.0 OR mappings(*.hbm.xml).The project your select is a Hibernate 2 project .Execution of this wizard may produce incompatible mapping files.
解決辦法:修改項目根目錄中 .myhibernatedata 文件中,version的原值爲2.1,修改爲3.1即可。myeclipse8.6和10親測可用。
版權聲明:本文爲CSDN博主「ajfnsadn」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_26668499/article/details/52328144
二.生成提示Path must include project and resource name: /
解決方法:修改.myhibernatedata文件裏面的configFile屬性
指定hibernate.cfg.xmll路徑。格式是/項目名稱/src/hibernate.cfg.xml
如果提示hibenate功能2.2衝突,修改version 爲當前hibernate使用版本
.myhibernatedata
genBasicCompId=false
sessionFactoryName=
profile=
daoSFId=
version=3.0
jndiPath=
detectM2M=false
reStrategyClass=
springDaoFile=
useJavaTypes=true
keyGenerator=uuid.string
libInstallFolder=
addLibs2Project=false
genVersionTag=false
sessionFactoryId=
basePersistenceClass=
reSettingsFile=/jxwpgsh/hibernate.reveng.xml
configFile=/jxwpgsh/src/hibernate.cfg.xml
createConfigFile=false
addLibs2Classpath=false
原文鏈接: https://www.iteye.com/blog/zhouchaofei2010-1312250
三.運行後報錯"table" is not mapped
現象:
使用hql="from person" 出現" person is not mapped " 錯誤
配置文件如下:
<hibernate-mapping>
<class name="src.Person"
table="person">
<id name="name"/>
<property name="password"/>
</class>
</hibernate-mapping>
原因:
hql是寫的是PO對象,不是table名
故改爲配置文件中的紅色部分的類名即可。
原文鏈接: http://www.blogjava.net/wj110reg/articles/216180.html
四.MyEclipse運行hibernate程序報Duplicate class/entity mapping問題
由於hibernate.cfg.xml在根目錄下和存放xml文件目錄都有一個,導致衝突造成,僅保留根目錄的即可
可參考鏈接: https://www.cnblogs.com/xinyuyuanm/archive/2013/05/04/3060077.html