栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

setMaxResults用于Spring

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

setMaxResults用于Spring

你可以使用新引入的

Top
First
关键字来定义查询方法,如下所示:

findTop10ByLastnameOrderByFirstnameAsc(String lastname);

Spring Data将自动将结果限制为你定义的数目(如果省略,则默认为1)。请注意,结果的排序在这里变得很重要(通过OrderBy示例中的子句或将Sort参数传递给方法)。在涵盖Spring Data Evans发布系列的新功能的博客文章中或在文档中了解更多内容。

对于以前的版本
为了只检索数据片段,Spring Data使用了分页抽象,该分页抽象Pageable在请求方带有接口,在Page事物的结果侧也带有抽象。所以你可以开始

public interface UserRepository extends Repository<User, Long> {  List<User> findByUsername(String username, Pageable pageable);}

并像这样使用它:

Pageable topTen = new PageRequest(0, 10);List<User> result = repository.findByUsername("Matthews", topTen);

如果你需要知道结果的上下文(实际上是哪一页?它是第一个页面?总共有几页?),请Page用作返回类型:

public interface UserRepository extends Repository<User, Long> {  Page<User> findByUsername(String username, Pageable pageable);}

然后,客户端代码可以执行以下操作:

Pageable topTen = new PageRequest(0, 10);Page<User> result = repository.findByUsername("Matthews", topTen);Assert.assertThat(result.isFirstPage(), is(true));

如果你将其Page用作返回类型,我们并不是会触发要执行的实际查询的计数预测,因为我们需要找出总共有多少个元素来计算元数据。除此之外,请确保你确实为配备了PageRequest排序信息,以获得稳定的结果。否则,即使下面的数据没有更改,你可能会触发两次查询并获得不同的结果。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/382295.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号