SSH级联操作报错:org.hibernate.exception.ConstraintViolationException: Could not execute

来源:互联网 发布:知乎沙发挑选 编辑:程序博客网 时间:2024/05/29 17:29


SSH整合过程中,删除具有外键的记录时报错:

spring4+hibernate4

org.hibernate.exception.ConstraintViolationException: Could not execute 

因为有外键约束,所以报错。

两个表的关系为基于外键的双向1-1关联

A表主键  为 B表的外键

//设置级联属性CascadeType为删除,当删除A表记录时,自动删除B表中具有A外键的记录@OneToOne(targetEntity=B.class, mappedBy="B", cascade=CascadeType.REMOVE)private B  b;//省略 setter、getter方法

B表对应实体

//设置级联属性CascadeType为持久化和刷新,当删除B表记录时,不会删除A表中对应的记录,但是更新B表会刷新A表对应记录@OneToOne(targetEntity=A.class,cascade={CascadeType.PERSIST,CascadeType.REFRESH})//映射a_id外键列,参照a表中的a_id列@JoinColumn(name="a_id", referencedColumnName="a_id", unique=true)private A a;


0 3
原创粉丝点击