middlege
middlegenIDE是middlegen在eclipse当中的插件。middlegen-hibernate包可以用来从数据库中的表生成,hbm.xml文件。middlegen-extensions可以从hbm.xml生成.java文件(持久类)。
middlegen-hibernate的使用
根据表所在的数据库,在Middlegen-Hibernate-r5/Middlegen-Hibernate-r5/config/database目录下,找到相应的数据库XML。比如mysql,就打开mysql.xml.
<property name="database.script.file" value="${src.dir}/sql/${name}-mysql.sql"/>
<property name="database.driver.file" value="${lib.dir}/mysql-connector-java-5.1.6-bin.jar"/>//填上实际JDBC JAR
<property name="database.driver.classpath" value="${database.driver.file}"/>
<property name="database.driver" value="com.mysql.jdbc.Driver"/> //填上实际在用的driver
<property name="database.url" value="jdbc:mysql://localhost:3306/firstdb"/> //填上实际在用的URL
<property name="database.userid" value="root"/> //数据库的用户名
<property name="database.password" value="root1"/> //密码
<property name="database.schema" value=""/> //表的所有者,又可理解为工作区
<property name="database.catalog" value="firstdb"/> //数据库名字 <property name="jboss.datasource.mapping" value="mySQL"/>
然后进行保存。再打开Middlegen-Hibernate-r5/Middlegen-Hibernate-r5目录下的build.xml.
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/mysql.xml"> 此处的file路径指向上面编辑后保存的mysql.xml.“。”代表build.xml所在目录。相对路径。
]>
<project name="Middlegen Hibernate" default="all" basedir="D:/Middlegen-Hibernate-r5"> 这里basedir可以用"。"相对路径,由于本人较懒不愿意安装ant及设置ant的环境变量,所以把修改后的build.xml复制在eclipse下直接运行ANT。
<!-- project name="Middlegen Hibernate" default="all" basedir="D:/Middlegen-Hibernate-r5" -->
这里是具体产生的hbm.xml的设置
<hibernate
destination="${build.gen-src.dir}" //这里是指产生的hbm.xml的输出目录
package="${name}.hibernate" // 放在哪个包里面。指包名。
genXDocletTags="false" //是否产生Xdcolet标签
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
用ant运行build.xml就可以了。
middlegen-extensions
具体过程,大同小异。网上可以找到很多相关设置,
以下是非常好的说明转自http://www.blogjava.net/relax/archive/2005/03/01/1588.html
先决条件:
已经安装了ant和MySQL数据库,数据库表已经建立。
1、 从Hibernate官方网站下载Middlegen-Hibernate和hibernate-extensions,并解压。
2、 配置Middlegen-Hibernate:
2.1 配置数据库连接
假设连接的数据库是MySQL,在Middlegen-Hibernate-r5/config/database目录中有一个mysql.xml文件,是用来配置MySQL数据库的连接的。内容为:
<property name="database.script.file" value="${src.dir}/sql/${name}-mysql.sql"/>
<property name="database.driver.file" value="${lib.dir}/mysql-connector-java-3.0.15-ga-bin.jar"/>
<property name="database.driver.classpath" value="${database.driver.file}"/>
<property name="database.driver" value="org.gjt.mm.mysql.Driver"/>
<property name="database.url" value="jdbc:mysql://localhost/jboss"/>
<property name="database.userid" value="jboss"/>
<property name="database.password" value="jboss"/>
<property name="database.schema" value=""/>
<property name="database.catalog" value=""/>
<property name="jboss.datasource.mapping" value="mySQL"/>
将mysql-connector-java-3.0.15-ga-bin.jar拷贝到${lib.dir},也就是Middlegen-Hibernate-r5/lib目录。
修改配置文件中的数据库连接项目database.url、database.userid、database.userid 使Middlegen-Hibernate可以找到数据库。
2.2 配置Middlegen-Hibernate-r5的ant运行文件build.xml
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/mysql.xml">
]>
指出使用的数据库配置文件。
<project name="Middlegen Hibernate" default="all" basedir=".">
<property file="${basedir}/build.properties"/>
<property name="name" value="hibernatesample"/>
指出你的应用名称。
<property name="build.gen-src.dir" value="C:/sample"/>
指出hbm的输出路径。
<hibernate
destination="${build.gen-src.dir}"
package="org.hibernate.sample"
genXDocletTags="false"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
指出hbm所在的包的位置。
指出hbm.xml中是否需要XDoclet Tags。
3、 运行Middlegen-Hibernate:
在Middlegen-Hibernate目录下运行ant,进入Middlegen-Hibernate的图形界面。可以设置表,和字段的特性。然后按Genarate,产生hbm.xml文件。
4、 配置hibernate-extensions
在hibernate-extensions-2.1.2/tools/bin目录有一个setenv.bat文件,改变其内容为:
set JDBC_DRIVER=C:/java/Middlegen-Hibernate-r5/lib/mysql-connector-java-3.0.15-ga-bin.jar
set HIBERNATE_HOME=C:/java/hibernate-2.1.6
set CORELIB=%HIBERNATE_HOME%/lib
set LIB=../lib
set PROPS=%HIBERNATE_HOME%/src
set CP=%JDBC_DRIVER%;%PROPS%;%HIBERNATE_HOME%/hibernate2.jar;%CORELIB%/commons-logging-1.0.4.jar;%CORELIB%/commons-collections-2.1.1.jar;%CORELIB%/commons-lang-1.0.1.jar;%CORELIB%/cglib-full-2.0.2.jar;%CORELIB%/dom4j-1.4.jar;%CORELIB%/odmg-3.0.jar;%CORELIB%/xml-apis.jar;%CORELIB%/xerces-2.4.0.jar;%CORELIB%/xalan-2.4.0.jar;%LIB%/jdom.jar;%LIB%/../hibernate-tools.jar
注意红色字体提示的均是路径和JAR文件名,一定要正确。
5、运行hibernate-extensions,根据hbm.xml产生POJO文件
在DOS中运行hbm2java c:/sample/org/hibernate/sample/*.xml --output=c:/sample/