cascade:
级联: 是对象的连锁操作
级联保存:
级联保存: 当保存双向关系的一方时,默认会报告错误,此时应该在customr中设置级联保存,即操作一个对象时,通过操作其他关联对象
在customer一端配置级联更新:
<set name="orders" cascade="save-update"> <key column="customer_id"></key> <one-to-many class="com.roxy.hibernate.pojo.Order"/> </set>
在测试用例中值针对customer进行操作:
cust.getOrders().add(o1); cust.getOrders().add(o2); session.save(cust);
级联删除:
级联删除: 如果不设置级联删除,那么在删除列信息时会将数据的外键设置为null 如果设置了级联删除,那么会在删除信息时将外键关联的数据同时删除
在customer端配置级联删除:
<set name="orders" cascade="save-update, delete"> <key column="customer_id"></key> <one-to-many class="com.roxy.hibernate.pojo.Order"/> </set> or: <set name="orders" cascade="all"
时间: 2024-08-30 18:02:28