Hibernate实战_笔记19(实现映射之XDoclet)

原创 2014年03月14日 11:25:59

使用XDoclet

      XDoclet项目给Java带来了面向属性的编程概念。XDoclet利用Javadoc标签格式(@attribute)来指定类、字段,或者方法级的元数据属性。
      XDoclet被实现为生成Hibernate XML元数据(或者其他东西,取决于插件)的一个Ant目标,作为构建过程的一部分。用XDoclet创建Hibernate XML映射文档很简单;不用手工编写,而是用定制的Javadoc标签给持久化类的Java源代码做上标记。
XDoclet下载地址:XDoclet2下载地址
/**
 * 用户实体类
 * 
 * @hibernate.mapping default-cascade="true"
 * @hibernate.class table="TBL_USER"
 * 
 */
public class User {


	private Integer id;// 用户编号
	private String username;// 用户名
	private String password;// 密码


	public User() {
		super();
	}
	
	public User(String username, String password) {
		super();
		this.username = username;
		this.password = password;
	}
	
	/**
	 * @hibernate.id generator-class="native" column="USER_ID" type="integer"
	 * @return
	 */
	public Integer getId() {
		return id;
	}
	
	@SuppressWarnings("unused")
	private void setId(Integer id) {
		this.id = id;
	}
	
	/**
	 * @hibernate.property column="UNAME" type="string" length="50" not-null="false"
	 * @return
	 */
	public String getUsername() {
		return username;
	}


	public void setUsername(String username) {
		this.username = username;
	}
	
	/**
	 * @hibernate.property  column="UPWD" type="string" length="50" not-null="false"
	 * @return
	 */
	public String getPassword() {
		return password;
	}


	public void setPassword(String password) {
		this.password = password;
	}
}
build.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<project name="XDoclet-Hibernate" basedir=".">
	<!--后面的构建任务中可能会用到的一些基本属性-->
	<property name="project.lib.dir" value="${basedir}/lib" />
	<property name="project.src.dir" value="${basedir}/src" />
	<property name="xdoclet.home" value="E:/Jar/xdoclet-plugins-dist-1.0.4" />


	<property file="hibernate.properties" />


	<!-- =================================================================== -->
	<!-- Define the class path                                               -->
	<!-- =================================================================== -->
	<path id="xdoclet.task.classpath">
		<fileset dir="${xdoclet.home}/lib">
			<include name="**/*.jar" />
		</fileset>
	</path>
	<!-- 引用引入的jar包-->
	<taskdef 
		name="xdoclet" 
		classname="org.xdoclet.ant.XDocletTask"
		classpathref="xdoclet.task.classpath"
	/>
	<!-- =================================================================== -->
	<!-- 生成Hibernate映射文件                                                 -->
	<!-- =================================================================== -->
	<target name="gen-mapping">
		<xdoclet>
			<fileset dir="${project.src.dir}">
				<include name="**/*.java" />
			</fileset>
			<component 
				classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin" 
				version="3.0" 
				destdir="${project.src.dir}" />
		</xdoclet>
	</target>
	<!-- =================================================================== -->
	<!-- 生成Hibernate配置文件                                                 -->
	<!-- =================================================================== -->
	<target name="gen-configuration">
		<xdoclet>
			<fileset dir="${project.src.dir}">
				<include name="**/*.java"/>
			</fileset>
			<component
				classname="org.xdoclet.plugin.hibernate.HibernateConfigPlugin"  
			    destdir="${project.src.dir}"  
			    version="3.0"  
			    hbm2ddlauto="create"  
			    jdbcurl="${hibernare.connection.url}"  
			    jdbcdriver="${hibernate.driver_class}"  
			    jdbcusername="${hibernate.connection.username}"  
			    jdbcpassword="${hibernate.connection.password}"  
			    dialect="${hibernate.dialect}"  
			    showsql="true"  
			/>
		</xdoclet>
	</target>
</project>


Hibernate学习笔记(1)----用Ant与XDoclet自动生成Hibernate配置文件与映射文件

现在主要从事JavaWeb开发,一直都想把JavaWeb里用的最广泛的S2SH(Struts2,Hibernate,Spring)经典组合框架系统的学习一遍,之前学完了Struts2,那么接下来一段时...

xdoclet生成hibernate映射文件

1.配置ant,需要xdoclet-plugins-1.0.3文件 2.User实体类(注解一定要写,否则运行没有效果) package com.zhlk.oa.model; /**  * @hib...

Hibernate实战_笔记34(映射枚举、实现EnhanceUserType接口)

映射枚举 枚举类型是一个常见的Java惯用语,其中类有着(小)数量不变的不可变实例。 1、在JDK5.0中使用枚举 如果使用JDK5.0,可以给类型安全的枚举使用内建的语言支持。例如,Ratin...

Ant + XDoclet2生成Hibernate3的配置及映射文件

第一步:Ant的使用 先简单介绍一下吧,解压后,将解压目录设置到环境变量ANT_HOME(确保JAVA_HOME有效),然后在path中添加%ANT_HOME%/bin,这时在cmd中运行ant...

ant深入浅出(一)ant+xdoclet 生成hibernate配置文件以及实体映射文件

在java开发分了很多步骤来开发一个项目,这些繁琐的步骤常常让我们很头疼,庆幸的是已经有不错的工具来帮我们管理和构建开发过程中的一系列任务,下面主要介绍的是ant这个工具,它可以单独运行也可以同其他一...

XDoclet 与Hibernate 映射

  • 2010年06月26日 07:06
  • 36KB
  • 下载

Hibernate实战_笔记24(主键生成策略、类映射选项)

数据库主键 Hibernate需要知道你生成主键的首选策略。不过,先要定义主键。 1、选择主键 备选的键是能够用来识别表中一个特定行的一列或者一组列。要变成主键,备选键必须满足下列属性: 1)它的值(...

Hibernate实战_笔记23(映射持久化)

理解实体和值类型       实体是表述一级业务对象的持久化类型。换句话说,你在一个应用程序中必须处理的有些类和类型更为重要,它一般使得其他的类和类型变得比较不重要。你可能会认同这种说法:在Cavea...

Hibernate实战_笔记32(考虑定制的映射类型、创建UserType)

考虑定制的映射类型 拿前面章节的的Address类的映射作为组件来举例: 这个值类型映射很简单,用户自定义的新Java类型的所有属性都被映射到内建的SQL数据类型的单独的列。然而...

Hibernate实战(第二版)笔记----第四章--映射持久化类

自然键: 组合键: 代理键:
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate实战_笔记19(实现映射之XDoclet)
举报原因:
原因补充:

(最多只允许输入30个字)