当存储库返回类型为List <post>时,Spring JPA查询返回List <pageimpl>

时间:2018-05-14 12:06:48

标签: java spring spring-data-jpa

根据我的理解,这首先是不可能的。通用应该可以防止这种情况发生。当我尝试访问列表时,我得到一个InvocationTargetException(可能因为它期望Post)。这是我的代码中的相关部分:

List<Post> posts;

Sort sort = new Sort(new Sort.Order(Sort.Direction.DESC, "dateCreate"));
Pageable pageable = new PageRequest(pageIndex, pageSize, sort);

posts = postRepository.findAll(pageable);    

这是我的存储库中的函数:

List<Post> findAll(Pageable pageable);

实际返回的列表包含一个PageImpl,而PageImpl包含应该首先返回的List<Post>

1 个答案:

答案 0 :(得分:3)

尝试:

Page<Post> findAll(Pageable pageable);

并将其转换为列表:

List<Post> postList =  x.findAll(page).getContent();