Ebean持久性不适用于Play 2.0

时间:2012-03-19 18:13:11

标签: java playframework-2.0 ebean

为了让自己熟悉Play 2.0 Framework,我一直关注Play 2.0 introduction tutorial。不幸的是,我无法让Ebean坚持不懈地工作。我的Task.java看起来像这样:

package models;

import java.util.*;

import play.db.*;
import play.data.validation.Constraints.*;

import javax.persistence.*;

@Entity
public class Task {

    @Id 
    public Long id;

    @Required
    public String label;

    public static List<Task> all() {
        return find.all();
    }

    public static void create(Task task) {
        task.save();
    }

    public static void delete(Long id) {
        find.ref(id).delete();
    }

}

但是在运行应用程序时,无法解析findsave。我想我忘了导入一个模块,但我无法弄清楚它是哪个......

2 个答案:

答案 0 :(得分:7)

我相信你需要扩展Model类。

@Entity
public class Task extends Model {
    ....
}

希望这有帮助。

答案 1 :(得分:2)

正如Dan W.已经说过,你需要扩展Model类:

@Entity
public class Task extends Model {
    ....
}

您还必须添加以下静态方法:

public static Finder<Long,Task> find = new Finder(
    Long.class, Task.class
);

另外,请确保在application.conf文件中添加以下行以启用数据库:

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:play"
ebean.default="models.*"