问个hibernate级联删除的问题

ieo2004 ieo2004 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
发信人: lzd82 (gogo), 信区: Java
标 题: 问个hibernate级联删除的问题
发信站: 水木社区 (Wed Dec 2 13:56:18 2009), 站内

简单的一对多双向关联,customer和order

配置文件相关信息如下:
customer.hbm.xml中
<set name="orders" cascade="delete" inverse="true">
<key column="CUSTOMER_ID" />
<one-to-many class="Order" />
</set>

order.hbm.xml中
<many-to-one
name="customer"
column="CUSTOMER_ID"
class="Customer"
not-null="true"
cascade="delete"
/>

应用代码:
加载一个customer,然后删除
Customer customer = (Customer) session.load(Customer.class, new Long(1));
session.delete(customer);

执行的sql语句是:
Hibernate: delete from orders where id=?
Hibernate: delete from orders where id=?
......
Hibernate: delete from customers where id=?

并不是期望中的
delete from orders where customer_id=?
delete from customers where id=?

请问是哪的配置问题吗?具体该如何配置呢?

...全文

相关推荐

评论 10
收藏 已收藏
分享
返回顶部
ieo2004
Java EE 67,535 成员 225,843 内容