hibernate映射树形结构数据

来源:互联网 发布:双色球开奖数据库 编辑:程序博客网 时间:2024/05/29 07:40

类Organization表示组织机构,是一个典型的属性结构数据,其属性包括:

 private int id; //id号
 private String name; //名称
 private String description; //描述
 private String sn; //编号
 private Organization parent; //父机构
 private Set children; //子机构

要将Organization映射到数据库中,对parent作多对一的映射(多个机构有一个共同的父机构),对children作一对多的映射(一个机构有多个子机构)。映射文件如下:

<hibernate-mapping>
  <class table="t_organization" name="cn.edu.cqu.model.Organization">
    <id name="id">
     <generator class="native"/>
    </id>
    <property name="name" not-null="true"/>
    <property name="description"/>
    <property name="sn"/>
    <many-to-one name="parent" column="pid"/>
    <set name="children">
     <key column="pid"/>
     <one-to-many class="cn.edu.cqu.model.Organization"/>
    </set>

  </class>
</hibernate-mapping>