2.53. MongoDB
对 MongoDB 文档和集合执行操作。
2.53.1. 内部内容
-
MongoDB 组件, URI 语法:
mongodb:connectionBean
有关使用和配置详情,请参阅上述链接。
2.53.2. Maven 协调
在 code.quarkus.redhat.com 上创建一个具有此扩展名的新项目
或者在现有项目中添加协调:
<dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-mongodb</artifactId> </dependency>
2.53.3. 其他 Camel Quarkus 配置
扩展利用 Quarkus MongoDB 客户端 扩展。Mongo 客户端可以通过 Quarkus MongoDB Client 配置选项 进行配置。
Camel Quarkus MongoDB 扩展会自动注册名为 camelMongoClient
的 MongoDB 客户端 bean。这可以在 mongodb endpoint URI connectionBean
path 参数中引用。例如:
from("direct:start") .to("mongodb:camelMongoClient?database=myDb&collection=myCollection&operation=findAll")
如果您的应用程序需要使用多个 MongoDB 服务器,您可以通过注入客户端和相关配置(如 Quarkus MongoDB 扩展客户端注入 中所述)来创建"named"客户端和引用。例如:
//application.properties quarkus.mongodb.mongoClient1.connection-string = mongodb://root:example@localhost:27017/
//Routes.java @ApplicationScoped public class Routes extends RouteBuilder { @Inject @MongoClientName("mongoClient1") MongoClient mongoClient1; @Override public void configure() throws Exception { from("direct:defaultServer") .to("mongodb:camelMongoClient?database=myDb&collection=myCollection&operation=findAll") from("direct:otherServer") .to("mongodb:mongoClient1?database=myOtherDb&collection=myOtherCollection&operation=findAll"); } }
请注意,在使用命名的客户端时,仍会生成"default" camelMongoClient
bean。如需更多信息,请参阅 多个 MongoDB 客户端的 Quarkus 文档。