pau*_*aul 7 java spring mongodb spring-data spring-data-mongodb
我想看看如何在我拥有的存储库方法中将一个排序引入Query注释.我已经在谷歌和这里看到了这段代码,但我无法使其有效
@Query("find({state:'ACTIVE'}).sort({created:-1}).limit(1)")
Job findOneActiveOldest();
@Query("{ state:'ACTIVE', $orderby: {created:-1}, $limit:1 }")
Job findOneActiveOldest();
Run Code Online (Sandbox Code Playgroud)
我知道通过分页我可以做到,但在某些情况下我不需要分页,所以我想知道如何使用Query注释.
有什么建议吗?
Mac*_*iak 22
我不认为用@Query注释做到这一点.如果您不需要分页,可以使用存储库方法使用Sort参数:
@Query("{ state:'ACTIVE' }")
Job findOneActive(Sort sort);
Run Code Online (Sandbox Code Playgroud)
并使用它:
yourRepository.findOneActive(new Sort(Sort.Direction.DESC, "created"))
Run Code Online (Sandbox Code Playgroud)
只需使用@Query注释的排序参数。1 = 升序,-1 = 降序
@Query(
value = ...,
sort = "{'details.requestTime': -1}"
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19418 次 |
| 最近记录: |