Java Study Center  
          日歷
          <2008年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789
          統(tǒng)計
          • 隨筆 - 40
          • 文章 - 3
          • 評論 - 0
          • 引用 - 0

          導(dǎo)航

          常用鏈接

          留言簿(1)

          隨筆檔案(40)

          文章檔案(3)

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

           
           以many-to-many為例,有Position和User兩張表,一個Position可以有多個Users,一個User也可以有多個Position,中間的關(guān)聯(lián)表為 test_user_position 。通過在PO中加入XDoclet,自動生成hbm配置文件。不廢話,看代碼。

          Position.java
          package test;

          import java.util.Set;
          import java.util.TreeSet;

          /**
           * @hibernate.class table="test_position"
           
          */

          public class Position {

              
          private int id;

              
          private int name;

              
          private Set<Users> users = new TreeSet<Users>();

              
          /**
               * @hibernate.id generator-class="identity" type="int"
               
          */

              
          public int getId() {
                  
          return id;
              }


              
          public void setId(int id) {
                  
          this.id = id;
              }


              
          /**
               * @hibernate.property length="25"
               
          */

              
          public int getName() {
                  
          return name;
              }


              
          public void setName(int name) {
                  
          this.name = name;
              }


              
          /**
                * @hibernate.set inverse="true" lazy="true" table="test_user_position"
                * @hibernate.collection-key column="position_id"
                * @hibernate.collection-many-to-many class="test.Users" column="user_id"
                
          */

              
          public Set<Users> getUsers() {
                  
          return users;
              }


              
          public void setUsers(Set<Users> users) {
                  
          this.users = users;
              }
              
          }


          接下來是Users.java
          package test;

          import java.util.*;

          /**
           * @hibernate.class table="test_uses"
           
          */

          public class Users {

              
          private int id;

              
          private String name;

              
          private Set<Position> positions = new TreeSet<Position>();

              
          /**
               * @hibernate.id generator-class="identity" typ="int"
               
          */

              
          public int getId() {
                  
          return id;
              }


              
          public void setId(int id) {
                  
          this.id = id;
              }


              
          /**
               * @hibernate.property length="25"
               
          */

              
          public String getName() {
                  
          return name;
              }


              
          public void setName(String name) {
                  
          this.name = name;
              }


              
          /**
                * @hibernate.set table="test_user_position" lazy="true"
                * @hibernate.collection-key column="user_id"
                * @hibernate.collection-many-to-many class="test.Position" column="position_id"
                
          */

              
          public Set<Position> getPositions() {
                  
          return positions;
              }


              
          public void setPositions(Set<Position> positions) {
                  
          this.positions = positions;
              }
              
          }


               在Myeclipse中右鍵點擊項目,選擇“Properties",從界面中選擇”Myeclipse/XDoclet",點擊“Add Standard...”,添加“Standard Hibernate”,點擊OK,結(jié)束設(shè)置。

               在項目中建立Hibernate.cfg.xml,配置好SessionFactory和數(shù)據(jù)源

               右鍵點擊項目,選擇“Myeclipse/Run XDoclet",將自動創(chuàng)建以上兩個類對應(yīng)的hbm文件。

               注意:創(chuàng)建完成的hbm文件存在問題,里面有role和readonly屬性,將前者改為name,后者刪掉即可。
          posted on 2008-07-31 11:28 綠茶_鄭州 閱讀(265) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
           
          Copyright © 綠茶_鄭州 Powered by: 博客園 模板提供:滬江博客
          主站蜘蛛池模板: 崇仁县| 阳谷县| 桑日县| 江津市| 日喀则市| 嫩江县| 西峡县| 仙游县| 建阳市| 尤溪县| 湖北省| 郯城县| 宜阳县| 德州市| 甘南县| 察哈| 六枝特区| 望城县| 休宁县| 石嘴山市| 德昌县| 安徽省| 得荣县| 东台市| 丹棱县| 洪泽县| 潼南县| 嘉义县| 奉化市| 高州市| 尼木县| 闻喜县| 湘潭市| 万州区| 万源市| 平乐县| 桐柏县| 商河县| 肥西县| 原平市| 民丰县|