Play Framework fetch(int max)vs limit

时间:2012-08-22 10:43:07

标签: jpa playframework

我正在使用Play Framework 1.2.4。在模型类中,我们找到了具有许多选项的方法。例如:

List<Cat> cats = Cat.find("query").fetch();

或者我们可以设置最大结果,如:

List<Cat> cats = Cat.find("query").fetch(50);

这相当于

SELECT * from cat LIMIT 50;

我只是想确保在性能方面它们至少相同?如果不是在Play Framework中获得最后n records的最佳方式是什么?

1 个答案:

答案 0 :(得分:5)

fetch(50)内部使用javax.persistence.Query.setMaxResults。这将由Hibernate转换为LIMITTOP,具体取决于DB方言。因此,就性能而言,它们是相同的。

所以要获取最新的 n 猫,

List<Cat> cats = Cat.find("order by age").fetch(50);