hibernate @OneToOne关系中如何删除主键同时清空外键呢

我有个house类house类中有个@OneToOne(cascade=CascadeType.ALL)publicPropertyAreagetPropertyArea... 我有个house类 house类中有个
@OneToOne(cascade = CascadeType.ALL)
public PropertyArea getPropertyArea() {
return propertyArea;
}
如何实现在删除PropertyArea 的时候清空 house中的PropertyArea 外键的值呢
@OneToOne(cascade = CascadeType.ALL) 这样是对的吗?
之前描述的不太清楚现在补充一下,
我有两个类
1:房屋类 House
2:片区类 PropertyArea

其中房屋类有片区类的外键 (房屋类是单向关联了片区类 片区类没关联房屋类)
@OneToOne(cascade = CascadeType.ALL)
public PropertyArea getPropertyArea() {
return propertyArea;
}
现在的问题是我想在删除片区类的时候自动把房屋类里面的片区外键给清空了,这样的情况hibernate该如何设置呢,应该是在片区类里面设置嘛?
展开
 我来答
斋如风0I5
推荐于2016-05-16 · TA获得超过598个赞
知道小有建树答主
回答量:453
采纳率:100%
帮助的人:276万
展开全部
理论上如果房屋类中有片区类的外键,你是删不掉片区类的,他会报错说是有外键存在,数据库就会报错 。 因为 一般情况下,如果删掉某一片区 那么这个片区中的房屋也都会不存在的 ,所以你可以这样实现:写个触发器 ,在删除片区类之前 ,先删掉房屋类中与要删除片区相关的房屋,再执行删除片区类,这样应该会成功
更多追问追答
追问
问题是我的房屋不能被删除的
追答
那样的话   为什么要删除那一片区域呢?  区域都不存在了,怎么还会有房屋存在呢??
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式