第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

hibernate中一對多為什么映射成set而不是list

標簽:
Java

比如如下代码:

  1. #  /** 
  2. #      * 用户信息 
  3. #      */   
  4. #     @OneToMany(cascade=CascadeType.ALL,fetch = FetchType.LAZY)   
  5. #     @JoinColumn(name = "comId")   
  6. #     private Set<DUser> users = new HashSet<DUser>();    

<!-- list -->

  1. #  /** 
  2. #      * 用户信息 
  3. #      */   
  4. #     @OneToMany(cascade=CascadeType.ALL,fetch = FetchType.LAZY)   
  5. #     @JoinColumn(name = "comId")   
  6. #     private List<DUser> users = new ArrayList<DUser>();    

解释:
首先,你要清楚List和Set的区别:List是有序和可重复;Set是无序,但是不能重复.
其次,在一对多关联中.想象一下这种情况:你要更新从表记录;
从List中得到从表的一个对象引用,然后你对这样对象修改后,又放回List,你的List中就包括两个从表对象的引用.你在保存时,这两个引用,你觉得会保存两次还是一次?
而如果是Set,你得到从表对象的引用,之后修改从表对象的内容,你再往Set里面放,Set里面因为已经有这个从表对象的引用,就不会再给里面加.这样,你的Set里面还是只有一个从表对象的引用.这样你保存,这个从表对象只保存一次

點擊查看更多內(nèi)容
2人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消