Siv*_*lam 1 java jpa playframework
似乎以下语法不起作用.我们有任何替代查询吗?
JPA.em().createQuery(queryStr).getResultList().from(startAt).fetch(offset);
Run Code Online (Sandbox Code Playgroud)
我们知道,from()和fetch()仅适用于JPAQueryobject,上面的代码将生成List而不是JPAQueryobject.
请注意,queryStr结合了2种不同的模型.
无论如何从上面的查询中获取JPAQueryobject?这样我就可以使用from和fetch.
对于"没有工作"的部分,你能更准确一点吗?你有任何错误,或类似的东西?
在我的应用程序中,我实现了一些分页功能,JPA查询的一个例子就是这个(News我的应用程序的一个模型):
public static void news(int size, int page) {
// 'size' is the number of elements displayed per page
// 'page' is the current page index, starting from 1.
int start = page * size;
List<News> allNews = News.find("order by date desc").from(start).fetch(size);
// Once the list of news is found, we return them in Json format...
renderJSON(allNews, new NewsJsonSerializer());
}
Run Code Online (Sandbox Code Playgroud)
关于编辑:该方法createQuery返回一个Query对象.因此,您可以使用setFirstResult()方法而setMaxResults()不是from()和fetch().应用于您的代码,您的查询现在看起来像:
JPA.em().createQuery(queryStr).setFirstResult(startAt).setMaxResults(offset).getResultList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3467 次 |
| 最近记录: |