cascade与inverse学习心得

本文介绍了ORM映射中Cascade和Inverse属性的作用及用法。Cascade用于指定对主对象操作时是否同步到从对象,包括多种操作类型如save-update、delete等。Inverse属性用于决定对象是否维护关联关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cascade与inverse学习心得

Cascade:用来说明当对主对象进行某种操作时是否对其关联的从对象也作类似的操作,常用的Cascade取值由:none,all,save-update,delete,lock,refresh,evict,replicate,persist,merge,

delete-orphan(one-to-many)。一般以many-to-one,many-to-many不设置级联,在one-to-oneone-to-many不设置级联,在one-to-oneone-to-many中设置级联。

说明:none:表示没有任何操作级联(默认值)

       All:表示所有的操作都级联

       Save-update:表示在save/update/save-update时产生级联

       Delete:表示删除时级联

      若要多个操作都产生级联则:可以用,分开如:save,delete

       Delete-orphan表示若在从对象中把对应的主对象的值修改为null则删除从对象。通常在one-one中使用。

 

       一般以many-to-one,many-to-many不设置级联,在one-to-oneone-to-many不设置级联,在one-to-oneone-to-many中设置save-update级联。

 

 

 

 

 

Inverse表示:“是否放弃维护关联关系”(Java里面个对象产生关联时,对数据库的影响),one-to-manymany-to-many的集合定义中使用,inverse=true”表示该对象不维护关联关系;该属性的值一般在使用有序集合时设置成false(注意hibernate的缺省值是false.

One-to-many维护关联关系就是更新外键.many-to-many维护关联关系就是在中间表增减记录.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zylyueliang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值