hibernate @many-to-one取消级联动作 5

在使用hibernate做数据库插入时出现以下错误,上网查过原因是由于many-to-one插入数据库时会级联插入到关联表,我想不使用级联动作应该如何设置?java.sq... 在使用hibernate做数据库插入时出现以下错误,上网查过原因是由于many-to-one插入数据库时会级联插入到关联表,我想不使用级联动作应该如何设置?
java.sql.BatchUpdateException: Cannot add or update a child row: a foreign key constraint fails (`tssa`.`business_cooperationbusinessproduct`, CONSTRAINT `FKF8FBA933913273A2` FOREIGN KEY (`businessProductId`) REFERENCES `business_cooperationbusiness` (`cooperId`))
展开
 我来答
tianyu19800728
2013-11-19 · TA获得超过120个赞
知道答主
回答量:102
采纳率:0%
帮助的人:65.4万
展开全部
@ManyToOne()
@Cascade(value={CascadeType.SAVE_UPDATE})
@JoinColumn(name
= "ID")
改成自己需要的级联操作即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
清晨088
2013-11-19 · 超过17用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:36万
展开全部
在你的实体映射文件,many-to-one 标签中加一个属性cascade为none
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱我所爱丶Lyb
2013-11-19 · TA获得超过408个赞
知道小有建树答主
回答量:390
采纳率:0%
帮助的人:310万
展开全部
xxx.hbm.xml 中 cascade设置为none 关闭级联操作
追问
我用的是注解方式,请问注解方式怎么设置?
追答
@ManyToOne(cascade = { CascadeType.PERSIST,CascadeType.MERGE}) 
它始终不进行更新和新增操作,
@ManyToOne(cascade =
{ CascadeType.ALL})就可以更新和新增,删除,

官方解释如下:
CascadeType.PERSIST:级联新增
CascadeType.MERGE:级联合并
CascadeType.REFRESH:级联刷新
CascadeType.REMOVE:级联删除
CascadeType.ALL:以上四种都是
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式