作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在我的实体关系中设置了 CascadeType.ALL,但是当我保留一个实体时它部分工作。
前任 :
` 成员实体:
@OneToMany(mappedBy="member", cascade={CascadeType.ALL})
private List<ContactInfo> contactInfos;
@ManyToOne
@JoinColumn(name="MEMBERID")
private Member member;
Member
详细信息还有
ContactInfo
数据被持久化。但是
Member.Id
未在
ContactInfo
中更新表,因为我在
ContactInfo
中有可为空的外键约束 table 。
最佳答案
如果您使用 CascadeType.ALL 仅级联 ContactInfo 中的成员,则该成员是拥有方。您必须删除mappedby,复制@JoinColumn 信息并将@ManyToOne 端设置为不可插入和不可更新。这将告诉 hibernate 在保存 MEMBER 时必须更新 CONTACTINFO 的 MEMBERID。
这是映射:
成员(member)实体:
@OneToMany
@JoinColumn(name="MEMBERID") //we need to duplicate the physical information
private List<ContactInfo> contactInfos;
@ManyToOne
@JoinColumn(name="MEMBERID", insertable=false, updatable=false)
private Member member;
关于jpa-2.0 - 级联 Type.ALL 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5107330/
我是一名优秀的程序员,十分优秀!