作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用Hibernate 3.3.1,我想在人员和指定公司之间建立关系。他们应该松耦合,但我想安排
通过级联创建公司,而不显式调用saveOrUpdate(newCompany)。
我定义了以下实体:
class Company
{
@Id
Long companyId;
String name;
}
class Person
{
@Id
Long personId;
String name;
@ManyToOne(cascade = {CascadeType.PERSIST, CascadeType.REFRESH, CascadeType.MERGE})
Company company;
}
testpers.setCompany (newCompany);
session.saveOrUpdate(testpers);
org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: consearch.model.core.Company
最佳答案
使用非JPA的@Cascade
方法时,可能需要启用Hibernate自定义 Session.saveOrUpdate()
。
添加@Cascade(org.hibernate.annotations.CascadeType.SAVE_UPDATE)
或使用Session.persist()
关于 hibernate @ManyToOne仅适用于CascadeType.ALL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18345598/
我是一名优秀的程序员,十分优秀!