結果類型
整理 Reactive Mongo DSL 的 Flux/Mono 終端和 PageResult、PageStream、ResultTuple 結果類型。
終端基本返回形式
findAll / 搜尋 findAll / 向量 findAll
Flux<E>
find / 搜尋 find / 向量 find
Mono<E>
計數
Mono<Long>
存在 / existsQuery
Mono<Boolean>
去重
Flux<R>; 필요할 때 호출 측에서 collectList()
PageResult<T>
getData()
현재 page의 List<T>
getTotalCount()
總匹配計數
map / mapNotNull / filter / filterNotNull
在保持 totalCount 的同時轉換當前頁面數據
size / isEmpty
當前頁面數據基準的 helper
totalPages / hasNext
基於 totalCount 和頁面大小的頁面計算 helper
PageStream<T>
data()
현재 page data Flux<T>
totalCount()
전체 count Mono<Long>
map / mapNotNull / filter / filterNotNull / onEach
保持 totalCount 的 publisher 的反應式數據轉換
size() / isEmpty() / totalPages() / hasNext()
基於 Mono 的反應式頁面助手
collectToPageResult()
data Flux를 List로 모아 Mono<PageResult<T>>로 변환
ResultTuple<L, R>
getLeftName() / getLeft()
左側查詢生成器名稱和結果
getRightName() / getRight()
右側查詢生成器名稱和查找/分組結果
getTotalCount()
選擇性連接到該元組的 totalCount
getRightIfListFirst()
如果 right 是 List,則返回第一個元素,若為 null 或空 List 則返回 null