hibernate映射

1,多对一(单向)

<!--Person端-->
<many-to-one name="group" column="groupid" cascade="all,none,save-update,delete"/>

 

2,一对一(主键,单向)默认了cascade

<!--Person端-->
<!--该段cascade="all"-->
<id name="id">
	<generator class="foreign">
		<param name="property">idCard</param>
	</generator>
</id>
<one-to-one name="idCard" constrained="true"/> <!--constrained属性使数据库添加约束-->

 

3,一对一(主键,双向)

<!--Person端-->
<!--该段cascade="all"-->
<id name="id">
	<generator class="foreign">
		<param name="property">idCard</param>
	</generator>
</id>
<one-to-one name="idCard" constrained="true"/>

<!--IdCard端-->
<!--该端不维护关系(inverse="false")-->
<one-to-one name="person"/> <!--默认是主键,所有不用加property-ref属性-->

4,一对一(外键,单向)

<!--Person端-->
<many-to-one name="idCard" unique="true"/>

5,一对一(外键,双向)

<!--Person端-->
<many-to-one name="idCard" unique="true"/>

<!--IdCard端-->
<!--该端不维护关系(inverse="false")-->
<one-to-one name="person" property-ref="idCard"/>

6,一对多(单向)

<!--Class端-->
<set name="students">
	<key column="classesid"/>
	<one-to-many class="Student"/>
</set>
 

7,一对多(双向)

<!--Class端-->
<set name="students" inverse="true"><!-- inverse="true" 多的端不维护关系-->
	<key column="classesid"/>
	<one-to-many class="Student"/>
</set>

<!--Student端-->
<many-to-one name="classes" column="classesid"/>
 

 

8,多对多(单向)

<set name="roles" table="t_user_role">
	<key column="userid"/>
	<many-to-many class="Role" column="roleid"/>
</set>
 

 

9,多对多(双向)

<set name="users" table="t_user_role" order-by="userid">
	<key column="roleid"/>
	<many-to-many class="User" column="userid"/>
</set>

<set name="roles" table="t_user_role">
	<key column="userid"/>
	<many-to-many class="com.bjsxt.hibernate.Role" column="roleid"/>
</set>
 

 

10,总结

        10.1:<many-to-one> 会在表中添加字段的

        10.2:cascade 不对查询有影响

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值