播放和Ebean - 获取第一条记录

4
如何使用play.db.ebean.Model.Finder获取数据库表中的第一条记录,类似于“first”方法。相应的SQL语句如下:
SELECT * FROM my_table LIMIT 1;

我们能否在最新的ebean和play上完成这个任务?自从Finder离开Play后,事情变得更加复杂了。 - Yonz
2个回答

13

假设模型Student

@Entity
public class Student{

@Id
public int id;

public String name;
}

模型查找器将会是

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

获取学生限制,每次限制1个

public static Student getStudent()
{
    // Use setMaxRows(limit_by)
    return find.setMaxRows(1).findUnique();
}

谢谢。我对ebean不熟悉,之前写的是setMaxRows(1).findList().get(0),但是findUnique()看起来更高效。不确定为什么他们不直接提供一个findFirst()方法。 - Jeremy Goodell

1
对于 ebean 4.0.6 实际上是:

this.find.query().setMaxRows(1).findUnique();


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接