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

可分页的elasticsearch findAll

田永春
2023-03-14

我需要获取所有可分页的文档,但我遇到了这个错误

com.fasterxml.jackson.databind.JsonMappingException:(java.lang.NullPointerException)(通过引用链:org.springframework.data.elasticsearch.core.aggregation.impl.AggregatedPageImpl["facets"])

存储库

public interface ConventionSearchRepository extends ElasticsearchRepository<Convention, Long> {
}

服务

@Service
@Transactional
public class ConventionServiceImpl implements ConventionService {

  private final ConventionSearchRepository conventionSearchRepository;

   @Override
   @Transactional(readOnly = true)
   public Page<Convention> findAll(final PageRequest pageable) {
     return conventionSearchRepository.findAll(pageable);
   }

}

控制器

  @GetMapping("/conventions")
  public Page<Convention> getAllConventions(@RequestParam(value = "_page", required = false, defaultValue = "0") int page,
      @RequestParam(value = "_perPage", required = false, defaultValue = "20") int perPage,
      @RequestParam(value = "_sortDir", required = false, defaultValue = "DESC") Sort.Direction sortDir,
      @RequestParam(value = "_sortBy", required = false, defaultValue = "shortname") String sortBy) {
    Sort sort = new Sort(sortDir, sortBy);
    PageRequest pageRequest = new PageRequest(page, perPage, sort);
    return conventionService.findAll(pageRequest);
  }

共有1个答案

华季同
2023-03-14

我可以简单地声明一个组织。springframework。数据领域将Pageable参数传递给我的@Controller,然后将其直接传递给我的服务,最终传递给@Repository(我使用CustomRepository对其进行了扩展)。Spring负责填充有关排序参数等的所有细节。我不必详细定义单独的@RequestParams。

这里有个例子

public Page<LogEntry> findAllLogEntries(@PageableDefault(page = DEFAULT_PAGE, size = DEFAULT_PAGE_SIZE) @SortDefault.SortDefaults({@SortDefault(sort = "@timestamp", direction = Direction.DESC)}) Pageable pageable) {

我在Spring 5和Spring Data Elasticsearch 3.0.5上。发布

 类似资料:
  • 我正在开发一个jQuery分页工具,当我让分页工作时,我看到了一个缺陷: 在桌面上有一行14个分页链接是可以的,但在移动设备上是不行的。因此,我想将一次可见页面的数量限制为5个(不包括next/prev按钮),并在到达第三个可见页面时进行更新,并更新分页中的可见页面 到目前为止,我已经编写了这个CodePen。我知道有插件可以为我做这件事,但我想避免在这个项目中使用插件。 HTML(正在分页的示例

  • 我遇到了一个问题,很难找到好的示例或此类问题的参考。我正在尝试将分页添加到我已经存在的NamedNativeQuery。据我所知,您需要提供另一个NamedNativeQuery用于在名称末尾添加. count的分页。 我当前的查询如下所示: 这是我尝试的分页查询: 我的来电者是这样的: 我对Spring、JPA和Hibernate仍然很陌生,但我仅限于以这种方式或类似的方式实现它。我可以使用Pa

  • 我有问题的样式分页。我有html代码: null null 我的分页元素有渐变边框,这是正常的,但分页数是不可见的。请帮我解决这个问题。

  • 在最底部,我发布了网页上可见的内容。不确定我在做什么,如果有必要,我会发布其他链接到此的. php文件。网页也无法使用,单击登录除了刷新页面外什么也不做。不确定发生了什么变化,但在添加几行代码之前,它正在工作。我在login.php上遇到了新问题,它用connect.php访问我的数据库 这是网页顶部显示的内容 ''' ''' 我的登录.php类由于更改而开始抛出错误 到''' ''' 这是我存储

  • 我有一个简单的查询如下“select * from USERS”。我还使用Pageable来启用分页。 此查询可能具有基于给定参数是否为 null 的可选谓词。 例如,如果给定了“code”参数且该参数不为空,则查询变为“select * from USERS where code =:code”; 据我所知,我不能使用@Query注释来实现这一点。我可以实现一个定制的存储库,并使用EntityM

  • 问题内容: 如何使用和在一起? personelRepository.java personelService.java personelController.java 当我运行它时,会出现这样的错误。但是,如果我像findAll(Pageable page)和findAll(Specification filter)一样分别调用findAll()函数,它将起作用。但是我不能一起使用。 问题答案: