[Hibernate]基于xml和annotation的many-to-many单向关联【学习笔记】

基于xml的多对多单向关联的关键配置:

many2many(xml):单向关联
  |--->model
     |--->Book
        |--->private Set<Chapter> chapters = new HashSet<Chapter>();
     |--->Chapter
     |--->*.hbm.xml
        |--->Book.hbm.xml
           |---><set name="chapters" table="BOOK_CHAPTERS_1" cascade="save-update,remove">
             	   <key name="book_id" />
             	   <many-to-many class="Chapter" column="CHAPTER_ID"/>
                </set>
        |--->Chapter.hbm.xml
  |--->hibernate.cfg.xml
     |---><mapping resource="model/Book.hbm.xml" />
     |---><mapping resource="model/Chapter.hbm.xml" />


基于annotation的多对多单向关联的关键配置:

many2many(anno):单向关联
  |--->model
  	|--->Book
  	  |--->private Set<Chapter> chapters = new HashSet<Chapter>();
  	       @ManyToMany(targetEntity=Chapter.class)
	       @JoinTable(name="BOOK_CHAPTER_11",schema="hibernate",
			    joinColumns={@JoinColumn(name="BOOK_ID")},
			    inverseJoinColumns={@JoinColumn(name="CHAPTER_ID")}
		   )
	       @Cascade(value={CascadeType.SAVE_UPDATE,CascadeType.REMOVE})
  	|--->Chapter
  |--->hibernate.cfg.xml
  	|---><mapping class="model.Book" />        
  	|---><mapping class="model.Chapter" /> 


    注意基于xml的和基于annotation的hibernate.xfg.xml配置文件中的<mapping>元素的不同





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值