我在我的项目中使用 Hibernate。服务器启动时出现错误:
org.hibernate.PersistentObjectException: detached entity passed to persist
以下“授权”代码:
@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name = "login", unique = true, updatable = false)
private String name;
//Important to Hibernate!
@SuppressWarnings("MySQLConfig")
public UsersDataSet() {
}
@SuppressWarnings("MySQLConfig")
public UsersDataSet(long id, String name) {
this.setId(id);
this.setName(name);
}
public UsersDataSet(String name) {
this.setId(-1);
this.setName(name);
}
请解释一下,我哪里错了?
最佳答案
我怀疑您正在尝试执行 session.persist(userData)
而不是执行 session.saveOrUpdate(..)
(将更新分离的对象)或 session.save(..)
(将创建一个新行)。请根据您的需要尝试最后两个中的任何一个。
关于java - hibernate 中的异常 "org.hibernate.PersistentObjectException",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35919705/