打算使用
Middlegen
生成
hibnernate
的
java
文件和
hbm.xml
文件,弄了很久,都就快放弃了,再逼俺的话就自己用
.net
写个自动生成工具了。惊喜的是在
Middlegen
的
zip
包里发现了一个
build.xml
和相关的文件,简单的修改了一下,竟然有转机了。
不过生成的hbm.xml不符合期望,父标签竟然是<compost-id>这样的,而且ant的log输出了The JDBC driver didn't report any primary key for xxx这样的信息,很明显Middlegen把这些表生成为hibernate的组件类了。
以前在做地图引擎后台的时候就知道Sql Server 2000的jdbc驱动太旧了,是返回不了主键的,于是我改为用jtds-0.91.jar,但依然出现同样的错误。百度,google找不到任何有帮助的信息,我心里已经在盘算着先用MySQL建表,然后再导出hbm.xml,因为MySQL 5.x已经支持返回主键了,突然想起自己还有一个SqlServer 2000 jdbc 3.0驱动,替换了一下再生成,竟然成功了,真是欣喜。