俺是java和hibernate和ant的绝对的三料菜鸟。hibernate似乎很好用,但是写表对应的类和.hbm.xml文件实在头大。所以俺想找一款可以自动生成这些文件的工具。
你要是没有ant,请先下载ant。俺一直打不开官方的地址,所以从pchome下载
http://dlfjgwbn.pchome.net:8080/development/java/apacheant161.zip。解压文件后就可以用了,但等等,你需要安装了jdk,设置了CLASSPATH,JAVA_HOME。然后把ant的目录下的bin文件夹添加到path环境变量,设置ANT_HOME。
我的机器上的设置:
CLASSPATH .;D:\jdk150\lib\tools.jar;D:\jdk150\jre\lib\rt.jar
JAVA_HOME D:\jdk150
Path D:\apache-ant-1.6.1\bin;
ANT_HOME D:\apache-ant-1.6.1
然后下载并解压middlegen。我解压到了D:\hibernate-3.0\middlegen-2.1。好了,现在可以开始build hibernate需要的文件了,有个D:\hibernate-3.0\middlegen-2.1samples的文件夹,它存放了一个build的例子,我决定修改这个例子然后使用。
但是再等等。middlegen需要你提供一些必要的配置。它需要连接到你的数据库,所以你需要给它提供数据库的连接信息和驱动库。各种数据库的配置信息在目录D:\hibernate-3.0\middlegen-2.1\samples\config\database 下面。俺的数据库是mssql,所以俺打开了mssql.xml文件,配置了信息如下:
<property name="database.script.file" value=""/>
<property name="database.driver.file" value="${lib.dir}/mssqlserver.jar"/>
<property name="database.driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
<property name="database.url" value="jdbc:microsoft:sqlserver://localhost:1433"/>
<property name="database.userid" value="sa"/>
<property name="database.password" value="haha"/>
<property name="database.schema" value="dbo"/>
<property name="database.catalog" value="aljoin_info"/>
<property name="jboss.datasource.mapping" value="MS SQLSERVER"/>
aljoin_info是俺的数据库名称。并把msbase.jar,mssqlserver.jar,msutil.jar拷贝到D:\hibernate-3.0\middlegen-2.1\samples\lib目录。
然后编辑D:\hibernate-3.0\middlegen-2.1\samples\build.xml文件,将"ENTITY database SYSTEM"的值改成"file:./config/database/mssql.xml"
更改这个build的其它属性。build.xml中更改project的属性:
<project name="Middlegen aljoni_info" default="hbm2java" basedir=".">
...
<property name="name" value="com.aljoin.gas"/>
删除D:\hibernate-3.0\middlegen-2.1\samples\build下的所有文件。然后打开命令行,
cd D:\hibernate-3.0\middlegen-2.1\samples
ant
这时候ant会自动读build.xml文件,找到project,运行名为"hbm2java"及其依赖的target.因为俺是菜鸟,什么ejb,jbo俺通通用不到.如果你不是菜鸟,可以设置成default="all",而且如果您的系统没有安装jboss之类的会出错,但我想如果您不是菜鸟应该也不会看到这里了hoho :p
在跳出的程序界面上按generate。等待结束,然后关闭程序界面。在命令行窗口看到正在生成.java文件的信息。
查看D:\hibernate-3.0\middlegen-2.1\samples\build目录。上帝保佑你会看到一些你需要的文件。
到写完这篇烂文,一个早上已经过去,俺又把青春贡献给了党-_-||