这里是Ant的build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project basedir="." default="All" name="HibernateToolsDemo">
<property file="${basedir}/build.properties" />
<path id="Middlegen.Lib.Path">
<fileset dir="${Middlegen.Lib.Dir}">
<include name="**/*.jar" />
</fileset>
<pathelement path="${Middlegen.Home.Dir}/middlegen-lib/middlegen-2.1.jar" />
<pathelement path="${Middlegen.Home.Dir}/middlegen-lib/middlegen-hibernate-plugin-2.1.jar" />
<pathelement path="${MySQL.Driver}"/>
</path>
<path id="Hibernate2.Lib.Path">
<fileset dir="${Hibernate2.Lib.Dir}">
<include name="**/*.jar" />
</fileset>
<pathelement path="${Hibernate2.Home.Dir}/hibernate2.jar" />
</path>
<path id="Hibernate-Extensions2.Lib.Path">
<path refid="Hibernate2.Lib.Path" />
<fileset dir="${Hibernate-Extensions2.Lib.Dir}">
<include name="**/*.jar" />
</fileset>
<pathelement path="${Hibernate-Extensions2.Home.Dir}/tools/hibernate-tools.jar"/>
</path>
<path id="SchemaExport.Lib.Path">
<pathelement path="${Classes.Dir}" />
<path refid="Hibernate2.Lib.Path" />
</path>
<target name="All"
depends="Init.Dir, Middlegen, hbm2java, CompileJava, SchemaExport" />
<target name="Init.Dir">
<mkdir dir="${Classes.Dir}" />
<mkdir dir="${SQL.Dir}" />
<mkdir dir="${Src.Java.Dir}" />
<mkdir dir="${Src.Hbm.Dir}" />
</target>
<target
name="Middlegen"
description="Run Middlegen"
depends="Init.Dir"
>
<taskdef
name="middlegen"
classname="middlegen.MiddlegenTask"
classpathref="Middlegen.Lib.Path"
/>
<middlegen
appname="${App.Name}"
prefsdir="${basedir}"
gui="false"
databaseurl="${Database.Url}"
driver="${Database.Driver}"
username="${Database.User}"
password="${Database.Passwd}"
>
<hibernate destination="${Src.Hbm.Dir}"
package="${App.Package}"
genXDocletTags="true"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
</middlegen>
</target>
<target name="hbm2java" depends="Init.Dir">
<taskdef
name="hbm2java"
classname="net.sf.hibernate.tool.hbm2java.Hbm2JavaTask"
classpathref="Hibernate-Extensions2.Lib.Path"
/>
<hbm2java output="${Src.Java.Dir}">
<fileset dir="${Src.Hbm.Dir}">
<include name="**/*.hbm.xml"/>
</fileset>
</hbm2java>
</target>
<target name="CompileJava" depends="Init.Dir">
<javac
srcdir="${Src.Java.Dir}"
destdir="${Classes.Dir}"
classpathref="Hibernate2.Lib.Path"
>
<include name="**/*.java"/>
</javac>
</target>
<target name="SchemaExport" depends="Init.Dir">
<taskdef name="schemaexport"
classname="net.sf.hibernate.tool.hbm2ddl.SchemaExportTask"
classpathref="SchemaExport.Lib.Path"
/>
<schemaexport properties="${basedir}/hibernate.properties"
quiet="yes"
text="yes"
drop="no"
delimiter=";"
output="${SQL.Dir}/${App.Name}.sql"
>
<fileset dir="${Src.Hbm.Dir}">
<include name="**/*.hbm.xml" />
</fileset>
</schemaexport>
</target>
</project>
这里是hibernate.properties
hibernate.connection.driver_class = org.gjt.mm.mysql.Driver
hibernate.connection.url = jdbc:mysql://localhost:3306/demo
hibernate.connection.username = leemaasn
hibernate.connection.password = leemaasn
hibernate.dialect = net.sf.hibernate.dialect.MySQLDialect
这里是build.properties
App.Name = HibernateToolsDemo
App.Package = demo.hibernate.tools
Middlegen.Home.Dir = C:/Middlegen-r5
Middlegen.Lib.Dir = ${Middlegen.Home.Dir}/lib
Hibernate2.Home.Dir = C:/Hibernate2
Hibernate2.Lib.Dir = ${Hibernate2.Home.Dir}/lib
Hibernate-Extensions2.Home.Dir = C:/Hibernate-Extensions2
Hibernate-Extensions2.Lib.Dir = ${Hibernate-Extensions2.Home.Dir}/tools/lib
MySQL.Driver = C:/MySQL/mysql-connector-java-3.1.7-bin.jar
Database.Url = jdbc:mysql://localhost:3306/demo
Database.Driver = org.gjt.mm.mysql.Driver
Database.User = leemaasn
Database.Passwd = leemaasn
Build.Dir = ${basedir}/build
Classes.Dir = ${Build.Dir}/classes
SQL.Dir = ${basedir}/sql
Src.Dir = ${basedir}/src
Src.Java.Dir = ${Src.Dir}/java
Src.Hbm.Dir = ${Src.Dir}/hbm