java - 分页的内容返回空
问题描述
使用 PagingAndSortingRepository 内容返回 {} 和来自页面 url 参数的正确数量的内容。示例:我的表有 20 行,在 url 中放置 ?page=0&size=10。当在邮递员中返回时,关键内容返回
"content": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
]
调试请求并返回它有值。但是没有显示。不知道为什么。
我的存储库
public interface LocalUtilRepository extends PagingAndSortingRepository<LocalUtilModel, Integer> {
Page<LocalUtilModel> findAll(Pageable pageable);
}
春季启动版
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
请求的结果
{
"content": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
],
"pageable": {
"sort": {
"sorted": false,
"unsorted": true,
"empty": true
},
"offset": 0,
"pageNumber": 0,
"pageSize": 10,
"unpaged": false,
"paged": true
},
"totalPages": 2,
"totalElements": 11,
"last": false,
"size": 10,
"number": 0,
"sort": {
"sorted": false,
"unsorted": true,
"empty": true
},
"numberOfElements": 10,
"first": true,
"empty": false
}
我的模型
@Entity(name = "EXPLOCALUTIL")
public class LocalUtilModel {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@NotNull
@Size(min = 5, max = 255)
@Column(name = "DESCLOCALUTIL")
private String descLocalUtil;
@Column(name = "COORD")
private String coordenada;
private String referencia;
@NotNull
@Column(name = "IDEXPFEIRA")
private Integer idExpFeira;
}
解决方案
根据您的 JSON 响应,它显示为"offset":0
.
尝试在您的存储库可分页参数中传递它。
PageRequest.of(0, 10)
这里 0 是页码,10 是偏移量。
公式定义:
int start = pageNumber * offset + 1;
int end = start+offset.
所以在我们的场景中,开始为 1,结束为 10。这将获取前 10 个返回值。
ResponseEntity.ok().body( localUtilRepository.findAll(PageRequest.of(0, 10))
只需在第一个参数中传递您的页面,在第二个参数中传递大小。
推荐阅读
- postgresql - kubernetes timescaledb statefulset:在 pod 重新创建时丢失的更改
- spring-boot - Cucumber 测试在 Jenkins 中第一次构建失败,但是当多次运行构建时构建通过
- python - 无法点击不同的结果来解析内页的标题
- reactjs - onClick 使用 React 获取巡航列表标题
- eclipse - Eclipse Birt 中的日期和时间参数
- c# - 是否有任何 string.Contains 或相关方法
- php - 尝试创建表时无法修复 mysql 中的语法错误
- codeigniter - 登录页面中的挂钩给出错误 localhost 将您重定向了太多次
- php - Yii2 | 共享主机上的高级项目模板错误的重定向路线
- visual-studio - Microsoft Visual Studio 2019 教程