使用 Play Framework 在数据库中查找单个对象
Finding single object in database using Play Framework
我在 2.4 版中设置了一个普通的 Play Framework - Java 项目。创建自定义模型对象并 return 它们的列表非常容易。我正在使用 ebean 持久化对象。
但是我如何使用 GET return 单个对象?
路线:
GET /payments/:id controllers.Application.getPayment(id: Long)
并且控制器尝试通过 Id 查找对象:
public Result getPayment(Long id) {
Payment payment = Payment.find.byId(id);
return ok(toJson(payment));
}
但我的应用程序不知道 find
是什么。
我按照官方的说明做了Play documentation。
编辑:我的 Payment.class
package models;
import com.avaje.ebean.Model;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Payment extends Model {
@Id
Long id;
String name;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
您的付款 class 没有 find
字段。
添加这个:
public static Finder<Long,Payment> find = new Finder<>(Long.class,Payment.class);
我在 2.4 版中设置了一个普通的 Play Framework - Java 项目。创建自定义模型对象并 return 它们的列表非常容易。我正在使用 ebean 持久化对象。
但是我如何使用 GET return 单个对象?
路线:
GET /payments/:id controllers.Application.getPayment(id: Long)
并且控制器尝试通过 Id 查找对象:
public Result getPayment(Long id) {
Payment payment = Payment.find.byId(id);
return ok(toJson(payment));
}
但我的应用程序不知道 find
是什么。
我按照官方的说明做了Play documentation。
编辑:我的 Payment.class
package models;
import com.avaje.ebean.Model;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Payment extends Model {
@Id
Long id;
String name;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
您的付款 class 没有 find
字段。
添加这个:
public static Finder<Long,Payment> find = new Finder<>(Long.class,Payment.class);