(转)数据库表生成对应的hbm文件,生成PO,使用Middlegen-Hibernate工具
首先下载Middlegen-Hibernate-r5(开源)和ant。
Middlegen-Hibernate-r5官方下载地址:http://nchc.dl.sourceforge.net/sourceforge/hibernate/Middlegen-Hibernate-r5.zip
ant-1.7.1 官方下载:http://ant.apache.org/bindownload.cgi
下载完后,
1,解压ant;放到某个位置(随意放)
我的电脑-属性-高级-环境变量-系统变量(S):
新建ANT_HOME:ant文件夹的根路径;
编辑PATH,在后面添加ant 文件夹的bin文件夹路径。
开始-运行-输入cmd,打开命令行,输入ant -version
看到 Apache Ant version 1.7.1 compiled on June 27 2008
配置正常
2,解压Middlegen-Hibernate-r5
得到 Middlegen-Hibernate-r5包后将其解压到d:\Middlegen-Hibernate-r5
把数据库驱动程序(这里用的是ojdbc14.jar)放到d:\Middlegen-Hibernate-r5\lib目录下
3 ,配置数据参数(以下均已oracle为例)
Middlegen-Hibernate-r5\config\database\oracle.xml文件中
<propertyenvironment="env"/>
<propertyname="database.script.file"value=""/>
<propertyname="database.driver.file"value="${lib.dir}/ojdbc14.jar"/>
<propertyname="database.driver.classpath"value="${database.driver.file}"/>
<propertyname="database.driver"value="oracle.jdbc.driver.OracleDriver"/>
<propertyname="database.url"value="jdbc:oracle:thin:@192.168.0.1:1521:dbname"/>
<propertyname="database.userid"value="username"/>
<propertyname="database.password"value="password"/>
<propertyname="database.schema"value="username"/>
<propertyname="database.catalog"value=""/>
<!--propertyname="jboss.datasource.mapping"value="Oracle7"/-->
<propertyname="jboss.datasource.mapping"value="Oracle10"/><!--oracle10g-->
<propertyname="jboss.datasource.mapping"value="Oracle9"/><!--oracle9i-->
<!--propertyname="jboss.datasource.mapping"value="Oracle8"/-->
注意:将原文件修改黑体部分改成你需要的数据库配置,特别需要强调的是在oracle中要指定 <property name="database.schema" value="username"/>如未指则在生成时会出问题.value值和database.userid值一样4,修改Middlegen-Hibernate-r5\build.xml引用的数据库配置
找到
<!DOCTYPEproject[
<!ENTITYdatabaseSYSTEM"file:./config/database/hsqldb.xml">
]>
将其改为:
<!DOCTYPEproject[
<!ENTITYdatabaseSYSTEM"file:./config/database/oracle.xml">
]>5,生成hbm文件
在命令行下运行 ant -buildfile d:\Middlegen-Hibernate-r5\build.xml
6,上一步执行完之后,出现一个Middlegen的图形化窗体,显示的是表关系。
点击左上角的“Generate”按钮,则会在Middlegen-Hibernate-r5\build\gen-src\airline\hibernate
路径下生成所有表的hbm.xml文件
7,可选,改变输出文件路径
hbm文件的输出目录
原为<propertyname="build.gen-src.dir"value="${build.dir}/gen-src"/>
默认为build\gen-src目录,当然你也可以改成你期望的如
改为<propertyname="build.gen-src.dir"value="c:\hbm"/>
hbm文件的包名
<hibernatedestination="${build.gen-src.dir}"