页面<>与切片对比什么时候使用哪个? [英] Page<> vs Slice<> when to use which?

查看:15
本文介绍了页面<>与切片对比什么时候使用哪个?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我读过 Spring Jpa 数据 文档 关于两种不同类型的对象,当您分页"由存储库进行的动态查询时.

I've read in Spring Jpa Data documentation about two different types of objects when you 'page' your dynamic queries made out of repositories.

页面切片

Page<User> findByLastname(String lastname, Pageable pageable);

Slice<User> findByLastname(String lastname, Pageable pageable); 

因此,我试图找到一些文章或任何关于两者的主要区别和不同用法性能如何变化以及如何排序的文章或任何内容strong> 影响两种类型的查询.

So, I've tried to find some articles or anything talking about main difference and different usages of both, how performance changes and how sorting affercts both type of queries.

有没有人有这类知识、文章或一些好的信息来源?

Does anyone has this type of knowledge, articles or some good source of information?

推荐答案

Page 扩展 Slice 并通过触发计数查询知道可用的元素和页面总数.来自 Spring Data JPA 文档:

Page 知道可用的元素和页面的总数.它通过基础结构触发计数查询来计算总数.由于这取决于所使用的商店,这可能会很昂贵,因此可以将 Slice 用作返回值.Slice 只知道是否有下一个 Slice 可用,这在遍历更大的结果集时可能就足够了.

A Page knows about the total number of elements and pages available. It does so by the infrastructure triggering a count query to calculate the overall number. As this might be expensive depending on the store used, Slice can be used as return instead. A Slice only knows about whether there’s a next Slice available which might be just sufficient when walking through a larger result set.

这篇关于页面&lt;&gt;与切片对比什么时候使用哪个?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆