3

为了熟悉 Play 2.0 框架,我一直在关注Play 2.0 介绍教程。不幸的是,我无法让 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();
    }

}

但是在运行应用程序时,find无法解决save。我想我忘了导入一个模块,但我不知道它是哪个...

4

2 回答 2

7

我相信你需要扩展Model课程。

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

希望这可以帮助。

于 2012-03-19T18:20:28.850 回答
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.*"
于 2012-03-20T13:14:07.833 回答