我有以下代码来搜索consedoc字段,但我发现它并不搜索,而是告诉我记录的数量
public static Specification<Solicitud>likeConsedoc(String consedoc){
if(consedoc.isEmpty() || consedoc.isBlank() || consedoc==null) { //carga todos los datos inicialmente sin filtrar
System.out.println("Consedoc null or empty");
return (root, query, criteriaBuilder)-> criteriaBuilder.isTrue(criteriaBuilder.literal(true));
}
return (root, query, criteriaBuilder)->
criteriaBuilder.like(root.get(Solicitud_.CONSEDOC), "%"+consedoc+"%");
}
在日志中,我可以看到正在执行的查询,我可以看到count子句,这不是我想要的。
select count(solicitud0_.id) as col_0_0_ from patrimonio.solicitud_usuario solicitud0_ where solicitud0_.consedoc like ?
我用Postman做了测试,它没有返回任何记录enter image description here
有人可以帮助我,或建议我使用从我的前端过滤数据。我正在使用Angular,我正在使用Sping Boot 在后端进行分页和过滤
事实上我没注意到有了这个,我看到后端工作正常。但在前端,如果我有一个失败,它不会显示我搜索的记录,它只显示我的总enter image description here
1条答案
按热度按时间hjqgdpho1#
Spring分页从第0页开始。通过传入pageNumber=1,pageSize=15,你告诉Spring跳过前15个结果--因为这个查询只有1个结果,所以你得到0个结果。此信息包含在返回的结果中,它告诉您总共有1个totalElements,1个页面,并且在此之后没有更多的记录。