【问题标题】:PersistenceException when I was using Ebean in Play framework当我在 Play 框架中使用 Ebean 时出现 PersistenceException
【发布时间】:2013-08-23 14:19:20
【问题描述】:

我正在使用 Play Framework 2.1.0 在 Java 中编写一个 Web 应用程序。我正在使用 Ebean 来操作数据库。但是我现在遇到了一个问题:

我有一个名为 book 的模型类,其中有一个名为 page 的 int 类型列:

    public int page;

    @Column(name="page")
    public int getPage() {
        return page;
    }

   public void setPage(int page) {
        this.page = page;
   }

而且我的MySql数据库中的page列也是int类型的。当我使用 Ebean 获得结果(行)并且我的数据库中页面列的值具有指定值(如 12)时,它运行良好。但是如果我的数据库中page属性的值为null,应用程序会抛出异常:

Execution exception[[PersistenceException: Error loading on models.Book.page]]

我不知道如何处理这个问题。

【问题讨论】:

  • 你能用 try-catch 吗?

标签: playframework playframework-2.0 playframework-2.1 ebean


【解决方案1】:

使用可以为 null 的 Integer 包装器,而不是 int 原语:

public Integer page;

@Column(name="page")
public Integer getPage() {
    return page;
}

public void setPage(Integer page) {
    this.page = page;
}

然后你就可以得到\set nulls

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-21
    • 2012-07-18
    相关资源
    最近更新 更多