问个hibernate级联删除的问题
发信人: 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=?
请问是哪的配置问题吗?具体该如何配置呢?