我正在关注Play!关于创建博客的框架教程。它们使用JPA而不是EBeans,并使用从play.db.Jpa.Model扩展的find()函数。我正在使用EBeans并使用play.db.ebean.Model扩展。但是,当我使用find()函数时,它表示不存在这样的方法。我做了一些研究,并在这里查看:http://www.playframework.com/documentation/2.0/api/java/play/db/ebean/Model.html
在这里:http://www.playframework.com/documentation/2.0/api/java/play/db/ebean/Model.Finder.html
但没有提到一个简单的find()方法(还有其他如findId(),但我不知道它们如何提供帮助)。我可以在Model类中使用替代方法吗?如果没有,是否还有其他可以轻松使用的课程?
修改
我需要创建的特定部分是User类中的connect()方法。在本教程中,这被描述为:
In the User.java source, add the connect() method:
public static User connect(String email, String password) {
return find("byEmailAndPassword", email, password).first();
}
如果我不能使用find(),我还有什么其他选择。 ebean.find()会工作吗?
答案 0 :(得分:0)
我知道使用play.db.ebean.Model的find()方法的两种方法。 第一个是这样的:
User user = Ebean.find(User.class, id);
第二种方法是这样的:
//define a Model.finder class in the User model class
//The first parameter would be the datatype of the id used, which is String in my case
public static Model.Finder<String,User> find = new Model.Finder<String,User>(String.class, User.class);
User user = User.find.byId(id);
由于您的查询基于两个值获取数据,因此您的代码应如下所示:
User.find.where()
.eq("email", email).eq("password",password)
.findUnique();