Java 玩带有Ebean的框架:PersistenceException
我有一个Java 玩带有Ebean的框架:PersistenceException,java,jpa,web,playframework-2.0,ebean,Java,Jpa,Web,Playframework 2.0,Ebean,我有一个主题类,它扩展了模型 创建表主题的第一条记录可以,但无法创建另一条记录: [PersistenceException:执行DML bindLog时出错[]错误[错误: 重复的键值违反唯一约束“主键主题”\n详细信息: 密钥(id)=(1)已存在。]] 例外情况当然发生在这一行: topic.save(); 这很奇怪,因为: 它以前工作没有问题 属性id是用注释@id定义的,该注释假定自动递增到下一个值,但我得到了关于重复id的异常 我该怎么解决这个问题 类模型(当然不是全部,只是相关的
主题
类,它扩展了模型
创建表主题的第一条记录可以,但无法创建另一条记录: [PersistenceException:执行DML bindLog时出错[]错误[错误: 重复的键值违反唯一约束“主键主题”\n详细信息: 密钥(id)=(1)已存在。]] 例外情况当然发生在这一行:
topic.save();
这很奇怪,因为:
id
是用注释@id
定义的,该注释假定自动递增到下一个值,但我得到了关于重复id的异常模型
(当然不是全部,只是相关的):
@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();
}
我找到了解决办法。当我将
id
的访问修饰符改回protected
时,它又起作用了。奇怪,但现在它工作得很好
说明?您能出示您的型号和保存代码吗?你使用固定装置吗?你的游戏版本和操作系统是什么@Id不足,可能需要一个序列:。我使用了Identity。我添加了
主题
类的代码。我不知道什么是固定装置。我在玩!linux Ubuntu下的2.0。