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

在访问Pageable的值问题之前调用“Optional#ispresent()”

胡越
2023-03-14

我正在使用Spring数据Mongo Pageable和声纳给我以下错误:

Optional<Order> optional = pageable.getSort().stream().findFirst();
if(optional.isPresent()) {
    direction = pageable.getSort().stream().findFirst().get().getDirection();
    property = pageable.getSort().stream().findFirst().get().getProperty();
}

SortOperation sortOperation = Aggregation.sort(direction, property); 

我尝试了几个选择,但都没有成功。

共有1个答案

邵博远
2023-03-14

if语句中再次调用pageable.getsort().stream()时,您正在创建一个新的可选,需要对其调用.ispresent()

您应该重用已有的可选,而不是一遍又一遍地创建流,如下所示:

Optional<Order> optional = pageable.getSort().stream().findFirst();
if(optional.isPresent()) {
    direction = optional.get().getDirection();
    property = optional.get().getProperty();
}
 类似资料:
  • 我如何根据声纳lint规则更改代码? 我的代码如下: 我不能通过声纳规则。我怎么能改变我的代码?

  • 问题内容: $.getJSON(“http://192.168.1.9:8983/solr/db/select/?wt=json&&start=0&rows=100&q="+query+"&json.wrf=?", function(result){ //$.each(result.response.docs, function(result){ 我得到我必须使ajax调用异步的问题。所以我确实喜

  • 我在访问二维哈希值时遇到问题。从我在网上可以看出,它应该是这样的: 然而,我得到了一个错误:“类型数组不支持关联索引。” 这是一个最小的可复制示例。 下面是另一个可复制的示例,但时间更长: 在我上面的代码中,访问二维哈希值的问题行将在for循环的第一次迭代中工作一次。然而,它总是在第二次通过时崩溃。我尝试过用静态键值替换大括号中的数组引用,以防这些键值有什么奇怪的地方,但这并不影响结果。我似乎无法

  • 我在AspectJ实现方面遇到了一些问题! 我想为带有@myAnnotation注释的方法创建一个日志方法。 然而,这似乎不起作用。它没有记录任何东西! 我在中使用了断点来检查结果,但没有成功! 有人知道为什么这行不通吗?

  • 我如何返回那些在访问Milpitas之后访问Santa Clara或在访问#2之后访问#5的客户的?

  • 我第一次用vue router history模式,build打包输出后,放到nginx指向的目录,能访问到首页,但是从首页访问其他页面,就显示404了,有知道是什么回事的大佬请解惑一下,谢谢啦。