我的文档库

多根目录侧边栏

flex-layout

  • Getting Started

  • Guides

  • Reference

typed-rx-http

  • Getting Started

  • Guides

  • Reference

global-rx-state

  • Getting Started

  • Guides

  • Reference

webflux-fe-dev-assistant

reactive-mongo-dsl

原生聚合

说明如何从第一阶段开始直接执行 MongoDB Driver 的 Bson 聚合阶段,并在不重新实现 DSL 功能的情况下使用新 Driver 功能。


Driver-native 根聚合

aggregation() 从 MongoDB Driver 返回的 Bson 阶段开始按调用顺序执行。DSL 不重新实现 Driver 聚合操作符,仅负责管道执行、映射、Reactor 发布者、预览/解释连接。Document 也是 Bson,因此可以直接传递。

java
结果映射

execute()

将结果映射为源实体类型。

execute(ResultType.class)

当聚合结果形状与源实体不同时,映射为单独的结果类型。

executeDocument()

原始 MongoDB Document 将被直接返回。

MongoDB Driver 5.10 的 $score / $scoreFusion

1.0.0 不会创建 $score$scoreFusion 的专用包装器。Driver 5.10 的 Aggregates.score(...) / Aggregates.scoreFusion(...) 已经返回 Bson 阶段,因此直接传递给 stage(...)

java
java
在 Search / Vector 后添加 Bson 阶段
java

Search/Vector 的 stage(Bson) 紧跟在强制性第一个阶段 $search/$vectorSearch 之后。像 $scoreFusion 这样的功能需要将阶段本身作为管道的第一个。使用 aggregation()

聚合发布者选项
java

preview() 和实际 MongoDB explain() 也在根聚合构建器中得到支持。

© 2026 Byeolnaerim. 保留所有权利.介绍隐私政策