通过ant生成表结构

通过ant来部署和运行hibernate程序的配置文件,主要关注的是生成数据库的ddl

<?xml version="1.0" encoding="UTF-8"?>
<project name="HelloWorld" default="compile" basedir=".">
	<property name="project.name" value="HelloWorld"/>
	<property name="project.version" value="1.0" />
	
	<property name="src.java.dir" value="src"/>
	<property name="lib.dir" value="lib"/>
	<property name="build.dir" value="bin"/>
	
	<path id="project.classpath">
		<fileset dir="${lib.dir}">
			<include name="**/*.jar" />
			<include name="**/*.zip" />
		</fileset>
	</path>
	
	<patternset id="meta.files">
		<include name="**/*.xml" />
		<include name="**/*.properties" />
	</patternset>
	<!--org.hibernate.tool.ant.HibernateToolTask来自于hibernate-tools.jar和freemarker-2.3.19.jar-->
	<taskdef name="hibernatetool" classname="org.hibernate.tool.ant.HibernateToolTask" classpathref="project.classpath"/>
	<!--
	export="true"表示所有的DDL语句并在数据库中执行
	-->
	<target name="schemaexport" depends="compile,copymetafiles" description="导出数据库的DDL,如果export=true表示所有的DDL语句并在数据库中执行">
		<hibernatetool destdir="${basedir}">
			<classpath path="${build.dir}" />
			<configuration  configurationfile="${build.dir}/hibernate.cfg.xml"/>
			<hbm2ddl
				drop="true"
				create="true"
				export="true"
				outputfilename="helloworld-ddl.sql"
				delimiter=";"
				format="true"
			/>
		</hibernatetool>
	</target>
	
	<target name="clean" description="清除没用的文件夹">
		<delete dir="${build.dir}" />
		<mkdir dir="${build.dir}"/>
	</target>
	
	<target name="compile" depends="clean" description="编译代码">
		<javac srcdir="${src.java.dir}" destdir="${build.dir}" nowarn="on">
			<classpath refid="project.classpath" />
		</javac>
	</target>
	
	<target name="copymetafiles" description="拷贝系统属性配置文件">
		<copy todir="${build.dir}">
			<fileset dir="${src.java.dir}">
				<patternset refid="meta.files" />
			</fileset>
		</copy>
	</target>
	
	<target name="hsqldbmanager" description="管理hsqldb数据库,使用此任务前,必须要启动hsqldb数据库">
		<java 
			classname="org.hsqldb.util.DatabaseManagerSwing" fork="yes" classpathref="project.classpath" failοnerrοr="true">
			<arg value="-url"/>
			<arg value="jdbc:hsqldb:hsql://localhost"/>
			<arg value="-driver"/>
			<arg value="org.hsqldb.jdbcDriver"/>
			<arg value="-user"/>
			<arg value="sa" />
		</java>
	</target>
	
	<target name="run" depends="compile,copymetafiles" description="Build and run HelloWorld">
		<java fork="true"
			classname="hello.HelloWorld"
			classpathref="project.classpath">
			<classpath path="${build.dir}" />	
		</java>
	</target>
	
</project>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值