XDoclet

  • 介绍
XDoclet是一个开源的代码生成引擎。它是面向属性编程的(Attribute-Oriented Programming)。意味着你可以通过给java资源文件中添加元素据(属性)从而实现增加更多的信息。这都是通过JavaDoc标记来完成的。 XDoclet会解析你的源文件,并且生成XML等描述性文件。这可以让你在面向组件开发中使用 持续集成。开发者只需要关注源文件即可。 官网地址:http://xdoclet.sourceforge.net/xdoclet/index.html
  • 环境依赖
必须确保JDK中lib目录下的tools.jar在classpath环境变量中,而且需要 Jakarta Ant 1.5或者更高版本。
  • 下载
下载地址:http://sourceforge.net/projects/xdoclet/ xdoclet-lib-1.2, includes all needed libraries xdoclet-bin-1.2, includes the documentation, all needed libraries and samples xdoclet-src-1.2, includes scripts and sources needed to build XDoclet (see below)
  • 步骤
  1. 安装XDoclet
  2. 在Java源文件中添加XDoclet提供的注解,例如:@hibernate.class
  3. 编写ant文件——build.xml
  4. 执行ant任务
  • 生成Hibernate配置文件的例子
下面是源代码文件: [codesyntax lang="java"]
/**
 * http://surenpi.com
 */
package org.suren.xdoclet.example;

/**
 * @author suren
 * @date 2015年9月11日 上午10:20:49
 * @hibernate.class
 * 		table="S_Student"
 */
public class Student
{
	/**
	 */
	private String id;
	private String name;

	/**
	 * @return the id
	 * @hibernate.id
	 * 		generator-class="uuid.hex"
	 */
	public String getId()
	{
		return id;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(String id)
	{
		this.id = id;
	}

	/**
	 * @return the name
	 * @hibernate.property
	 * 		column="s_name"
	 */
	public String getName()
	{
		return name;
	}

	/**
	 * @param name the name to set
	 */
	public void setName(String name)
	{
		this.name = name;
	}
}
[/codesyntax] 下面是build.xml的内容,从结构上分三块——引用XDoclet的类、定义XDoclet任务、执行任务: [codesyntax lang="xml"]
<?xml version="1.0" encoding="utf-8"?>
<project name="suren xdoclet project" basedir=".">
	<property name="src.dir" value="${basedir}/src" />
	<property name="xdoclet.home" value="C:/Users/zhaoxj/Desktop/xdoclet-1.2.1" />
	
	<path id="suren.class.path">
		<fileset dir="${xdoclet.home}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	
	<target name="init">
		<taskdef name="hibernatexdoclet"
			classname="xdoclet.modules.hibernate.HibernateDocletTask"
			classpathref="suren.class.path"/>
	</target>
	
	<target name="suren" depends="init">
		<hibernatexdoclet destdir="suren-gen-src"
			mergedir="debug"
			addedtags="@author XDoclet"
			verbose="true">
			<fileset dir="D:/Gboat-Toolkit-Suit/workspace/xdoclet/src">
				<include name="**/*.java"/>
			</fileset>
			
			<hibernate version="2.0" />
			
			<hibernatecfg jdbcUrl="jdbc:mysql://localhost/test"
				driver="com.mysql.jdbc.Driver"
				dialect="org.hibernate.dialect.MySQLDialect"
				userName="root"
				password="root" />
		</hibernatexdoclet>
	</target>
</project>
[/codesyntax]

你可能感兴趣的:(XDoclet)