用xdoclet生成hibernate映射文件

来源:互联网 发布:关晓彤网络直播 编辑:程序博客网 时间:2024/05/17 03:30
<script type="text/javascript">google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//</script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>首先你要下载xdoclet-1.2.3,ant1.6.5,然后写项目管理文件build.properties,build.xml。举例如下:build.properties内容:xdoclet.lib=E:/xdoclet-1.2.3/libbuild.xml内容:<?xml version="1.0" encoding="UTF-8"?><project name="pms" default="" basedir="."><property file="build.properties" /><property name="app.home" value="." /><property name="app.name" value="pms" /><property name="src.dir" value="${app.home}/src" /><path id="xdoclet.classpath"><fileset dir="${xdoclet.lib}"><include name="*.jar" /></fileset></path><!-- =================================================================== --><!-- Initialise --><!-- =================================================================== --><target name="init"><tstamp><format property="TODAY" pattern="d-MM-yy" /></tstamp><taskdef name="hibernatedoclet"classname="xdoclet.modules.hibernate.HibernateDocletTask"classpathref="xdoclet.classpath" /></target><!-- =================================================================== --><!-- The "hibernatedoclet" target generates Hibernate mapping files --><!-- based on XDoclet marked-up Plain Old Java Object (POJO) --><!-- =================================================================== --><target name="hibernatedoclet" depends="init"unless="hibernatedoclet.unnecessary"description="Generate Hibernate mapping files"><taskdef name="hibernatedoclet"classname="xdoclet.modules.hibernate.HibernateDocletTask"classpathref="compile.classpath" /><!-- generate hibernate files --><hibernatedoclet destdir="${src.dir}"mergedir="${src.dir}" excludedtags="@version,@author,@todo,@see"addedtags="@xdoclet-generated at ${TODAY}" force="false"verbose="false"><fileset dir="${src.dir}"><include name="net/pms/model/*.java" /></fileset><hibernate version="3.0" /></hibernatedoclet></target></project>javabean如下:package net.pms.model;import java.io.Serializable;import java.util.Date;import org.apache.commons.lang.builder.ToStringBuilder;import org.apache.commons.lang.builder.HashCodeBuilder;import org.apache.commons.lang.builder.EqualsBuilder;/** * * @author jfish * @hibernate.class table="person" */public class Person implements Serializable {private static final long serialVersionUID = 1044237873392048222L;private Long id;private String name;private Date createTime;/** * @return Returns the createTime. * @hibernate.property column = "ts" */public Date getCreateTime() {return createTime;}/** * @param createTime * The createTime to set. */public void setCreateTime(Date createTime) {this.createTime = createTime;}/** * @return Returns the id. * @hibernate.id column = "person_id" generator-class = "native" * unsaved-value = "not null" */public Long getId() {return id;}/** * @param id * The id to set. */public void setId(Long id) {this.id = id;}/** * @return Returns the name. * @hibernate.property */public String getName() {return name;}/** * @param name * The name to set. */public void setName(String name) {this.name = name;}/** * @see java.lang.Object#toString() */public String toString() {return new ToStringBuilder(this).append("name", this.name).append("id",this.id).append("createTime", this.createTime).toString();}/** * @see java.lang.Object#hashCode() */public int hashCode() {return new HashCodeBuilder(-96436153, 713792057).appendSuper(super.hashCode()).append(this.createTime).append(this.name).append(this.id).toHashCode();}/** * @see java.lang.Object#equals(Object) */public boolean equals(Object object) {if (!(object instanceof Person)) {return false;}Person rhs = (Person) object;return new EqualsBuilder().appendSuper(super.equals(object)).append(this.createTime, rhs.createTime).append(this.name, rhs.name).append(this.id, rhs.id).isEquals();}}生成的映射文件如下:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping><class name="net.pms.model.Person" table="person"><id name="id" column="person_id" type="java.lang.Long"unsaved-value="not null"><generator class="native"><!-- To add non XDoclet generator parameters, create a file named hibernate-generator-params-Person.xml containing the additional parameters and place it in your merge dir. --></generator></id><property name="createTime" type="java.util.Date" update="true"insert="true" column="ts" /><property name="name" type="java.lang.String" update="true"insert="true" column="name" /><!--To add non XDoclet property mappings, create a file namedhibernate-properties-Person.xmlcontaining the additional properties and place it in your merge dir.--></class></hibernate-mapping>
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 瑞康医药招聘 南宁瑞康医院 思瑞康说明书 山东瑞康医药2019破产 瑞康医药股份有限公司 镇江瑞康医院 远光瑞康全国统一价多少 美素和可瑞康哪个好 济南瑞康医药有限公司 山东瑞康医药股份有限公司 002589 广西中医药大学附属瑞康医院 美乐宝爱他美和可瑞康爱他美 瑞彪皮鞋 瑞得rtk 瑞得 瑞得仪器 瑞德 st瑞德股票 st瑞德 薇诺娜 瑞德 瑞德早教 瑞德设计 瑞德摄像机 瑞德健身教练培训学院 瑞德智能科技股份有限公司 瑞德健身培训学院 瑞德教育培训机构简介 瑞德英语学校 瑞德全站仪价格 瑞德摩尔 佛瑞德 薇诺娜瑞德 斯瑞德 凯瑞德股票 中汇瑞德 中汇瑞德电子有限公司 曼瑞德新风系统怎么样 曼瑞德温控器 凯瑞德股吧 施瑞德