我的文件庫

多根目錄側邊欄

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

com.byeolnaerim:reactive-mongo-dsl

在充分利用 MongoDB Reactive Streams Driver 功能的同時,將動態查詢、聚合、查找、原子更新、批量、Atlas Search 和 Vector Search 連接到基於 Reactor 的一致 DSL。


Reactive Mongo DSL 1.0.0

reactive-mongo-dsl 是一個 Java 庫,能夠在 MongoDB Reactive Streams Driver 和 Project Reactor 上連接動態條件、查詢、分頁、聚合、$lookup、分組、原子更新、批量、Atlas Search 和 Vector Search,形成一個鏈式流程。

Driver-first

不會取代 MongoDB Java Driver。Driver 提供的類型化構建器將被保留,DSL 簡化了重複組合和 Reactor 連接。

框架獨立核心

核心不直接依賴於 Spring Data MongoDB。基本的 DriverMongoExecutionContext 直接使用 Reactive Streams Driver。

逃生通道

可以直接接收 BsonSearchOperatorVectorSearchQuery、Driver 選項自定義器,因此即使 Driver 先添加新功能,也可以在現有 DSL 流程中使用。

基於 1.0.0

工件

com.byeolnaerim:reactive-mongo-dsl:1.0.0

Java

21+

MongoDB Java Driver

基於 5.10.0

Reactor

基於 Reactor BOM 2025.0.7

Spring Data MongoDB

可選。Spring 項目中將現有的映射/審計設置連接到應用程序側適配器。

build.gradle
text
主要執行流程

一般查詢

executeEntity(...) -> fields(...) -> end() -> find/findAll/count/distinct/delete/exists/atomicUpdate

Driver-native 聚合

通過 executeEntity(...).aggregation().stage(Bson)... 從第一個階段開始直接構建 Driver 管道。

Atlas 搜索

executeEntity(...).search(index) 中構建專用的 $search 操作符和終端。

向量搜索

executeEntity(...).vectorSearch(index) 中構建查詢向量、ANN/ENN、過濾器、嵌套向量選項。

事務

getTxJob(...) 將 MongoDB ClientSession 傳播到 Reactor 上下文。

© 2026 Byeolnaerim. 版權所有。介紹隱私政策