在非Spring环境下使用MongoDB Reactive,并使用Flux接收数据,需要手动创建连接和执行查询。以下是一个示例:
```java
import com.mongodb.reactivestreams.client.MongoClient;
import com.mongodb.reactivestreams.client.MongoClients;
import com.mongodb.reactivestreams.client.MongoCollection;
import com.mongodb.reactivestreams.client.MongoDatabase;
import org.bson.Document;
import reactor.core.publisher.Flux;
public class MongoReactiveFluxExample {
public static void main(String[] args) {
// 创建MongoDB客户端
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
// 获取数据库和集合
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("users");
// 执行查询并返回结果
collection.find()
.flatMapMany(document -> {
String name = document.getString("name");
return Flux.just(name);
})
.subscribe(System.out::println); // 输出查询结果
}
}
```
在这个示例中,我们使用了本地MongoDB服务器作为数据源,并执行了一个简单的查询语句。你可以根据需要修改连接字符串和查询语句。