当前位置: 首页 > 知识库问答 >
问题:

与spring boot usiing jpa分页

高恺
2023-03-14

我如何实现一个使用JpaRepository而不是PagingAndSortingRepository返回一页对象的方法?

我的存储库

public interface GroupRepository extends JpaRepository<Group, Long> {   
    @Query(value = "SELECT g FROM Group")
    Page<Group> listAllByPage(Pageable pageable);
}

我的服务实现:

@Override
public 
Page<Group> findGroupesByPagination(Pageable pageable) {
    return groupeRepository.listAllByPage(pageable);
}

我的rest控制器方法:

@RequestMapping(value="/groups", method = RequestMethod.GET)
public @ResponseBody Page<Group> list( Pageable pageable){
    Page<Group> groupes = groupeServiceImpl.findGroupesByPagination(pageable);
    return groupes;
}

最后我得到了这个错误:

创建名为“group serviceimpl”的bean时出错:通过字段“groupe repository”表示的依赖项不满足;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“group repository”的bean时出错:调用init方法失败;嵌套异常为java.lang.IllegalArgumentException:方法public abstract org.springframework.data.domain.page rimtrack.org.repository.grouprepository.listallbypage(org.springframework.data.domain.pageable)查询验证失败!

共有1个答案

勾起运
2023-03-14

查询可以通过某个地方的注释定义,也可以通过其他方式声明。请参阅特定存储的文档以查找该存储的可用选项。如果存储库基础结构在引导时没有找到该方法的声明查询,则会失败。

你应该用Spring Data JPA法。引用

  Page<T> findAll(Pageable pageable);

请更改存储库类。

考试:

public interface GroupRepository extends JpaRepository<Group, Long> {   
  Page<Group> findAlll(Pageable pageable);
}
 类似资料:
  • 分页与分段比较,如下表所示 - 编号 分页 分段 1 非连续的内存分配 非连续的内存分配 2 分页将程序分成固定大小的分页。 分段将程序分成可变大小的段。 3 由操作系统负责 由编译器负责。 4 分页比分段更快 分段比分页慢 5 分页更接近操作系统 分段更接近用户 6 它会遭受内部碎片问题 它会遭受外部碎片问题 7 没有外部碎片 没有外部碎片 8 逻辑地址分为:页码和页码偏移 逻辑地址分为:分段号

  • 问题内容: 显示标签提供给定对象的分页功能。Hibernates提供了仅提取每页所需记录的选项。在我的项目中,我们同时使用了这两个概念。 显示广告代码:我需要根据过滤条件提取所有记录并将其存储在会话中。然后这个displaytag将负责所有分页和排序。因此Httpsession拥有很多数据。 hibernate:它仅从数据库中获取请求的对象数,无需为每个请求打开会话。 最好的做事方法是什么?或者如

  • 我正在制作一个web组件,一个导航栏(或navbar)。里面有四个部分,标志,菜单,切换器,和额外。 问题是,我应该对每个部分使用 还是 ? 还是有更合适的元素类型? 插图是这样的: 匿名用户 这是一个很棒的问题,并且与语义HTML相关。根据MDN,当没有其他标记真正相关或合适时,我们应该使用section标记。如果意图是一个实际的节,那么它还应该包括一个节头。 HTML 元素表示文档的一个通用的

  • 有时,客户端希望 RESTful Web API 提供经过排序后的字段,比如,按照年龄从大到小排列学生;有时,根据客户端条件,需要返回给前端的数据过多,如果一次提供,会大大降低响应速度。此时,可将数据做分割,分成不同的小份,发送给客户端。这一节,我们为大家介绍 RESTful Web API 如何实现数据的排序与分页。 1.排序的使用 在类视图中设置 filter_backends,使用rest_

  • case 和 select 结构并不属于循环结构,因为它们并没有反复执行代码块。但是和循环结构相似的是,它们会根据代码块顶部或尾部的条件控制程序流。 下面介绍两种在代码块中控制程序流的方法: case (in) / esac 在 shell 脚本中,case 模拟了 C/C++ 语言中的 switch,可以根据条件跳转到其中一个分支。其相当于简写版的 if/then/else 语句。很适合用来创建

  • 窗口分屏 工作中经常会遇到这种情况,就是需要参照其他文档编辑当前文档(场景:翻译),或者从另外一个文档 copy 代码到当前文档(场景:复制 html 元素类名到 css 文档),这时候就是你最需要分屏的时候。 分屏方式 :split 缩写 :sp or Ctrl-w s 上下分屏 :vsplit 缩写 :vs or Ctrl-w v 左右分屏 :diffsplit 缩写 :diffs diff