マイライブラリドキュメント

マルチルートサイドバー

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はMongoDB Reactive Streams DriverとProject Reactorの上で動的条件、クエリ、ページング、集約、$lookup、グルーピング、アトミックアップデート、バルク、Atlas SearchとVector Searchを1つのチェイニングフローで接続するJavaライブラリです。

Driver-first

MongoDB Java Driverを置き換えません。Driverが提供するtyped builderはそのまま活用し、DSLは反復的な組み合わせとReactor接続を簡素化します。

Framework-independent core

コアはSpring Data MongoDBに直接依存しません。基本のDriverMongoExecutionContextはReactive Streams Driverを直接使用します。

Escape hatch

BsonSearchOperatorVectorSearchQuery、Driverオプションカスタマイザーを直接受け取ることができ、Driverに新機能が追加されても既存のDSLフローの中で使用できます。

1.0.0基準

Artifact

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プロジェクトではアプリケーション側のadapterとして既存のmapping/auditing設定を接続します。

build.gradle
text
主要な実行フロー

一般的なクエリ

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

Driverネイティブの集約

executeEntity(...).aggregation().stage(Bson)...で最初のstageからDriver pipelineを直接構成します。

Atlas Search

executeEntity(...).search(index)$search専用のoperatorとterminalを構成します。

Vector Search

executeEntity(...).vectorSearch(index)でquery vector、ANN/ENN、filter、nested vector optionを構成します。

Transaction

getTxJob(...)がMongoDB ClientSessionをReactor Contextに伝播します。

© 2026 Byeolnaerim. 無断転載を禁じます。紹介プライバシーポリシー