JPA 查找最后一个条目
我想知道使用JPA获取表的最后一个条目的最佳方法是什么。在Sql中,我正在寻找的是这样的:
select id from table order by id desc limit 1
我正在考虑model.count(),但这听起来更像是一个黑客,而不是一个好的解决方案;)
我想知道使用JPA获取表的最后一个条目的最佳方法是什么。在Sql中,我正在寻找的是这样的:
select id from table order by id desc limit 1
我正在考虑model.count(),但这听起来更像是一个黑客,而不是一个好的解决方案;)
查询方法的结果可以通过关键字 first 或 top 来限制,这些关键字可以互换使用。可以将可选的数值追加到 top/first 以指定要返回的最大结果大小。如果省略该数字,则假定结果大小为 1。
JpaClass findFirstByOrderByIdDesc();
您可以使用看起来与您的查询非常相似的 。JPQL query
select t from JpaClass t order by t.id desc
建立后,您可以致电Query object
query.getSingleResult() or call query.setMaxResults(1)
其次
query.getResultList()
编辑:我的错误:请注意mtpettyp在下面的评论。
不要使用 query.getSingleResult() 因为如果没有返回一行,可能会引发异常 - 请参阅 java.sun.com/javaee/5/...() - mtpettyp
使用 setMaxResults 和 getResultList。
query.setMaxResults(1).getResultList();