Ant+XDoclet工具使用
Ant使用:
1、下载ant并解压到硬盘的某个位置
2、配置ant的环境变量ANT_HOME=D:\commons\apache-ant-1.7.1 path=%ANT_HOME%\bin
3、测试ant是否安装成功。
运行cmd命令(小窗口+r可以调出运行窗口键入cmd)进入dos窗口,键入ant回车运行得到
Buildfile: build.xml does not exist!
Build failed
这就说明ant安装成功。
4、创建build.xml文件
- <? xml version = "1.0" encoding = "gbk" ?>
- < project name = "测试脚本" default = "copyfile" basedir = "." >
- < target name = "copyfile" >
- < copy file = "d:/a.txt" todir = "e:/Temp" overwrite = "true" />
- </ target >
- </ project >
<?xml version="1.0" encoding="gbk"?> <project name="测试脚本" default="copyfile" basedir="."> <target name="copyfile" > <copy file="d:/a.txt" todir="e:/Temp" overwrite="true"/> </target> </project>
直接运行ant,结果:
D:\>ant
Buildfile: build.xml
copyfile:
[copy] Copying 1 f
BUILD SUCCESSFUL
Total time: 0 seconds
测试ant成功!
**/CVS/*
两个**代表当前目录下的所有文件以及所有的子目录
/CVS代表当前目录下或者子目录下只要有CVS这个目录
/*代表CVS下的所有文件
XDoclet使用:
下载http://xdoclet.codehaus.org/
Ant+XDoclet:
OA工程里创建一个需要映射的对象
- package com.oa.model;
- /**
- * @author lukuijun
- * @hibernate.class table="t_user"
- */
- public class User {
- /**
- * @hibernate.id
- * generator-class="native"
- */
- private int id;
- /**
- * @hibernate.property
- */
- private String username;
- /**
- * @hibernate.property
- */
- private String password;
- public int getId() {
- return id;
- }
- public void setId( int id) {
- this .id = id;
- }
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this .username = username;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this .password = password;
- }
- }
package com.oa.model;
/**
* @author lukuijun
* @hibernate.class table="t_user"
*/
public class User {
/**
* @hibernate.id
* generator-class="native"
*/
private int id;
/**
* @hibernate.property
*/
private String username;
/**
* @hibernate.property
*/
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
建立build.xml
- <? xml version = "1.0" encoding = "UTF-8" ?>
- < project name = "OA系统构建脚本" default = "生成Hibernate配置脚本" basedir = "." >
- < property name = "src.dir" value = "${basedir}/src" />
- < property name = "xdoclet.home" value = "D:/commons/xdoclet-plugins-dist-1.0.4" />
- <!-- build classpath -->
- < path id = "xdoclet.task.classpath" >
- < fileset dir = "${xdoclet.home}/lib" >
- < include name = "**/*.jar" />
- </ fileset >
- </ path >
- < taskdef
- name = "xdoclet"
- classname = "org.xdoclet.ant.XDocletTask"
- classpathref = "xdoclet.task.classpath"
- />
- < target name = "生成Hibernate配置文件" >
- < xdoclet >
- < fileset dir = "${src.dir}/com/oa/model" >
- < include name = "**/*.java" />
- </ fileset >
- </ xdoclet >
- < component
- classname = "org.xdoclet.plugin.hibernate.HibernateConfigPlugin"
- destdir = "${src.dir}"
- version = "3.0"
- jdbcurl = "jdbc:mysql://localhost/oa"
- jdbcdriver = "com.mysql.jdbc.Driver"
- jdbcusername = "root"
- jdbcpassword = "lukuijun"
- dialect = "org.hibernate.dialect.MySQLDialect"
- showsql = "true"
- />
- </ target >
- < target name = "生成hibernate映射文件" >
- < xdoclet >
- < fileset dir = "${src.dir}/com/oa/model" >
- < include name = "**/*.java" />
- </ fileset >
- < component
- classname = "org.xdoclet.plugin.hibernate.HibernateMappingPlugin"
- version = "3.0"
- destdir = "${src.dir}"
- />
- </ xdoclet >
- </ target >
- </ project >
<?xml version="1.0" encoding="UTF-8"?> <project name="OA系统构建脚本" default="生成Hibernate配置脚本" basedir="."> <property name="src.dir" value="${basedir}/src"/> <property name="xdoclet.home" value="D:/commons/xdoclet-plugins-dist-1.0.4"/> <!-- build classpath --> <path id="xdoclet.task.classpath"> <fileset dir="${xdoclet.home}/lib"> <include name="**/*.jar"/> </fileset> </path> <taskdef name="xdoclet" classname="org.xdoclet.ant.XDocletTask" classpathref="xdoclet.task.classpath" /> <target name="生成Hibernate配置文件"> <xdoclet> <fileset dir="${src.dir}/com/oa/model"> <include name="**/*.java"/> </fileset> </xdoclet> <component classname="org.xdoclet.plugin.hibernate.HibernateConfigPlugin" destdir="${src.dir}" version="3.0" jdbcurl="jdbc:mysql://localhost/oa" jdbcdriver="com.mysql.jdbc.Driver" jdbcusername="root" jdbcpassword="lukuijun" dialect="org.hibernate.dialect.MySQLDialect" showsql="true" /> </target> <target name="生成hibernate映射文件"> <xdoclet> <fileset dir="${src.dir}/com/oa/model"> <include name="**/*.java"/> </fileset> <component classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin" version="3.0" destdir="${src.dir}" /> </xdoclet> </target> </project>
说明一点:build.xml文件在保存的时候格式一定要和encoding="UTF-8"一致,否则报错Invalid byte 1 of 1-byte UTF-8 sequence.错误的原因就是因为xml指定了utf-8格式,但保存的时候不是utf-8编码, 解决办法是用记事本打开之后,保存时候指定编码为utf-8编码。
下面运行ant就生成hibernate的配置文件和映射文件