当前位置: 首页 > 知识库问答 >
问题:

玩带有Ebean的框架:PersistenceException

相洛华
2023-03-14

我有一个主题类,它扩展了模型
创建表主题的第一条记录可以,但无法创建另一条记录:

[PersistenceException:执行DML bindLog时出错[]错误[ERROR:重复的键值违反了唯一约束“pk\U主题”\n详细信息:键(id)=(1)已存在。]]

例外情况当然发生在这一行:

topic.save();

这很奇怪,因为:

  1. 它以前工作没有问题

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

模型(当然不是全部,只是相关的):

@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();
}

共有1个答案

范俊逸
2023-03-14

我找到了解决办法。当我将id的访问修饰符改回protected时,它又起作用了。奇怪,但现在它工作得很好。

解释

 类似资料:
  • 从戏剧!框架文档: Play2.0中没有内置的JPA实现;您可以选择任何可用的实现。例如,要使用Hibernate,只需将依赖项添加到项目中: 我的选择是什么而不是冬眠? 你认为什么最适合留言板网站? 我知道Hibernate有一点开销,对吗?

  • 在不讨论原因的情况下,假设有人想要一个老式的Play Framework web服务,并且不想使用依赖注入,也不想依赖Google的Guice。在玩法2.8.x中还可能吗? 有没有一个简单的方法可以让你不去这里就呆在老学校里? 我承认,但不完全理解https://www.playframework.com/documentation/2.4.x/migration24。我认为我的问题与2.7中删除

  • 我想知道如何使用Play2.0中的模型和下面列出的查询来查询数据库。我没有看到将直接sql传递到play framework 2.0中的选项。 我想得到一份特定月份的费用清单。 我看到的选项是查询所有费用,然后使用Date对象解析它们列出的月份。 我认为应该有一种有效的方法,我似乎找不到一种使用ebean和Java play framework 2.0来执行此查询的方法。 使现代化 谢谢Nico,

  • 我想通过Remote tecommand操作打开一个对话框,并从页面后备bean中的中获取值。远程命令在页面加载时正确触发bb中的actionListener 使用此show Dialog方法也可以正确显示对话框: 在另一个Bean中: 问题是,我不知道如何聆听由以下事件引发的事件: 在PF示例中http://www.primefaces.org/showcase/ui/dialogFramewo

  • 问题内容: 我偶然发现了以下新的Java Web框架:播放 http://www.playframework.org/ http://www.playframework.org/documentation/1.0/home 如此惊人的功能列表,令我惊讶的是,我之前从未听说过它。 听起来像Java Web开发的承诺之地… 有人尝试过吗?有任何实际经验吗?您认为值得研究吗? 问题答案: 我同意杰森的观

  • 我使用play 2.0.1来构建我的应用程序。到目前为止,我还使用Ebean作为后端层,mysql作为数据库。Java作为语言。 问题: 是否有CRUD模块(动态)或CRUD创建模块?我在网上查了一下,很难找到关于新游戏框架2的东西。十、 根据这条线索,没有。。。[play framework][2.0]积垢管理。 但有些答案是古老的。也许有什么事在酝酿中? 提前谢谢。