2

我有一个Topic扩展类Model
创建表主题的第一条记录很好,但无法创建另一条记录:

[PersistenceException: 错误执行 DML bindLog[] 错误[错误:重复键值违反唯一约束“pk_topics”\n 详细信息:键 (id)=(1) 已存在。]]

例外当然发生在这一行:

topic.save();

这很奇怪,因为:

  1. 它以前没有问题。
  2. 该属性是用假设自动递增到下一个值id的注释定义的,但是我得到关于重复 id的异常。@Id

我应该怎么做才能解决这个问题?

Model(当然不是全部,只有相关的)

@Entity
@Table (name = "topics")
public class Topic extends Model {
@Id
public long id;
public String title;
public String content;
@ManyToOne
@JoinColumn(name = "forumId")
public Forum forum;
@ManyToOne
@JoinColumn(name = "userId")
public User user;
public Date date;

public static void create(Topic topic) {
    topic.save();
}
4

1 回答 1

1

我找到了解决方案。当我改回访问修饰符时idprotected它再次起作用。很奇怪,但现在它完美地工作了。

解释?

于 2012-10-06T20:15:38.667 回答