kwrl.net
当前位置:首页 >> jpA级联删除的问题 >>

jpA级联删除的问题

@OneToMany(mappedBy="category", cascade={CascadeType.ALL},fetch=FetchType.EAGER ) cascade的注解作用是:category对象的增删改关联到当前类所在对象 fetch是读取关联查询是否lazy

1.可以在里设置insert="false"和update="false",避免级联操作 2.如果在存在级联关系的数据表之间上进行非级联的操作,那么说明数据表关系的设计是不恰当的,应该去掉级联关系。

在主表的实体映射文件把inverse属性设置成false,把cascade属性设置成delete。 例如:

@OneToMany(cascade={CascadeType.ALL},orphanRemoval=true) public Set getBaos() { return baos; } 这样就行了。不过orphanRemoval只能是JPA2中才能使用,相当于说hibernate3.5之后版本支持。

贴注解代码··怀疑你关联写错了,JPA里关联写的是数据库字段名·· @JoinColumn(name = "brand_id", referencedColumnName = "id") 这里name是本类(表)在数据库的字段名,referencedColumnName 是关联类(表)在数据库中的关联字段名

案例: 表address中的customer_id为customer表中的id的值,通过customer_id可以找到相应的customer的记录。 将表customer映射为CustomerEO实体,代码如下: @Entity @Table(name="customer") public class CustomerEO implement Serializable{ @...

网站首页 | 网站地图
All rights reserved Powered by www.kwrl.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com