<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 11  文章 - 11  trackbacks - 0

    留言簿(2)

    隨筆分類(13)

    隨筆檔案(11)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    通常為了實現entity class的雙向association,每添加一組實例在java中需要兩行代碼:

    persion.getAddresses().add(address);
    address.getPersons().add(person);

    但對Hibernate而已,上面的代碼會被轉化為兩條insert語句,

    為了避免這樣的情況出現需要定義inverse屬性,告訴Hibernate persion和address之間的關系:

    // !file: Person.class
    public class Person {
        // ...
        @ManyToMany(
                  targetEntity= Address.class,
                  cascade = CascadeType.ALL,
          )
        @JoinTable(
                  name="persion_address",
                  joinColumns= {@JoinColumn(name="person_id")},
                  inverseJoinColumns= {@JoinColumn(name="address_id")}
          )
          private Set<Address> adressses = new HashSet<Address> (0);
        // ...
    }
    
    // !file: Address.class
    public class Address {
        // ...
        @ManyToMany(
                targetEntity= Persion.class,
                cascade = CascadeType.ALL, 
                mappedBy = "addresses"
        )
        private Set<Person> persons = new HashSet<Person>();
        // ...
    }
    

    上面的兩個annotation告訴Hibernate,Person是主,對Address中persons屬性的修改將不會產生SQL語句。

    Hibernate里,如果是Many-to-many的關系,可以任意設置主class

    通常,還可以將添加刪除關系的代碼包裝起來:

    // !file: Person.class
    public class Person {
        // ...
        public void addAddress(Address address) {
            this.getAddresses().add(address);
            address.getPersons().add(this);
        }
        public void removeAddress(Address address) {
            this.getAddresses().remove(address);
            address.getPersons().remove(this);
        }
        //...
    } 
    



    posted on 2007-03-27 21:18 hijeff 閱讀(362) 評論(0)  編輯  收藏 所屬分類: Hibernate
    主站蜘蛛池模板: 亚洲av最新在线网址| 亚洲国产一级在线观看 | 免费看内射乌克兰女| 男男AV纯肉无码免费播放无码| 亚洲一区二区中文| 日本免费在线观看| 亚洲成色www久久网站夜月| A级毛片高清免费视频在线播放| 亚洲一区无码精品色| 亚洲五月午夜免费在线视频| 亚洲av再在线观看| 一级成人a做片免费| 亚洲综合久久夜AV | 中文字幕永久免费视频| 国产精品亚洲成在人线| 日韩精品无码一区二区三区免费| 亚洲AV成人片色在线观看| 日本免费一区二区在线观看| 亚洲午夜精品在线| 成年美女黄网站色大免费视频| 亚洲欧美日韩中文字幕一区二区三区| 免费特级黄毛片在线成人观看| 亚洲AⅤ男人的天堂在线观看| 四虎永久在线免费观看| 一进一出60分钟免费视频| 国产av无码专区亚洲av桃花庵| 99在线在线视频免费视频观看| 亚洲噜噜噜噜噜影院在线播放| 成人五级毛片免费播放| 阿v视频免费在线观看| 亚洲色婷婷综合久久| 无码国产精品一区二区免费式影视| 亚洲字幕AV一区二区三区四区| 全黄a免费一级毛片人人爱| www一区二区www免费| 久久亚洲AV成人无码软件| 午夜时刻免费入口| 一个人免费视频在线观看www | 久久久久亚洲精品日久生情| 女人18毛片水最多免费观看 | 青柠影视在线观看免费高清|