注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

zhouhaigang.love的博客

喜欢冬日黄昏那冻住的山

 
 
 

日志

 
 

hibernate 中使用xdoclet  

2008-09-12 14:43:26|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Hibernate利用XDoclet自动生成配置文件

 以many-to-many为例,有Position和User两张表,一个Position可以有多个Users,一个User也可以有多个Position,中间的关联表为 test_user_position 。通过在PO中加入XDoclet,自动生成hbm配置文件。不废话,看代码。

Position.java

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客package test;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客import java.util.Set;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客import java.util.TreeSet;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客/** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客 * @hibernate.class table="test_position"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客 */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客public class Position ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private int id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private int name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private Set<Users> users = new TreeSet<Users>();

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     * @hibernate.id generator-class="identity" type="int"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public int getId() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setId(int id) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.id = id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     * @hibernate.property length="25"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public int getName() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setName(int name) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.name = name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.set inverse="true" lazy="true" table="test_user_position"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.collection-key column="position_id"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.collection-many-to-many class="test.Users" column="user_id"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public Set<Users> getUsers() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return users;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setUsers(Set<Users> users) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.users = users;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }    

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客}

接下来是Users.java

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客package test;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客import java.util.*;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客/** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客 * @hibernate.class table="test_uses"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客 */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客public class Users ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private int id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private String name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    private Set<Position> positions = new TreeSet<Position>();

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     * @hibernate.id generator-class="identity" typ="int"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public int getId() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setId(int id) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.id = id;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     * @hibernate.property length="25"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客     */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public String getName() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setName(String name) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.name = name;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    /** *//**

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.set table="test_user_position" lazy="true"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.collection-key column="user_id"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      * @hibernate.collection-many-to-many class="test.Position" column="position_id"

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客      */

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public Set<Position> getPositions() ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        return positions;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    public void setPositions(Set<Position> positions) ...{

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客        this.positions = positions;

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客    }    

hibernate 中使用xdoclet - zhouhaigang.love - zhouhaigang.love的博客}

     在Myeclipse中右键点击项目,选择“Properties",从界面中选择”Myeclipse/XDoclet",点击“Add Standard...”,添加“Standard Hibernate”,点击OK,结束设置。

     在项目中建立Hibernate.cfg.xml,配置好SessionFactory和数据源

     右键点击项目,选择“Myeclipse/Run XDoclet",将自动创建以上两个类对应的hbm文件。

     注意:创建完成的hbm文件存在问题,里面有role和readonly属性,将前者改为name,后者删掉即可。

  评论这张
 
阅读(109)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017