بدء سريع
نربط DriverMongoExecutionContext و MongoTemplateResolver وننفذ أول استعلام لـ Reactive Mongo DSL 1.0.0.
1. تكوين MongoExecutionContext
MongoConfig.java
javaMongoClient mongoClient = MongoClients.create(connectionString);
MongoDatabase mongoDatabase = mongoClient.getDatabase("app");
MongoExecutionContext context =
new DriverMongoExecutionContext(mongoClient, mongoDatabase);DriverMongoExecutionContext الأساسي يستخدم برنامج تشغيل MongoDB Reactive Streams مباشرة. إذا كانت قواعد تسمية المجموعات مختلفة، يمكن تمرير محلل أسماء المجموعات منفصل.
2. الاتصال بـ MongoTemplateResolver
MongoTemplateNameResolver.java
javapublic enum MongoTemplateName {
FRONT,
BACK
}
MongoTemplateResolver<MongoTemplateName> resolver = key ->
key == MongoTemplateName.BACK ? backContext : frontContext;
ReactiveMongoDsl<MongoTemplateName> dsl = new ReactiveMongoDsl<>(resolver);3. أول استعلام
UserService.java
javaFlux<User> users = dsl
.executeEntity(User.class, MongoTemplateName.FRONT)
.fields(
pair("status", "ACTIVE"),
minAge == null ? null : pair("age", minAge, gte)
)
.end()
.findAll()
.sorts(sort -> sort.desc("createdAt"))
.execute();عند استخدامه كـ Spring Bean
ReactiveMongoDslConfiguration.java
java@Configuration
public class ReactiveMongoDslConfiguration {
@Bean
public ReactiveMongoDsl<MongoTemplateName> reactiveMongoDsl(
MongoTemplateResolver<MongoTemplateName> resolver
) {
return new ReactiveMongoDsl<>(resolver);
}
}