2.56. MongoDB
对 MongoDB 文档和集合执行操作。
2.56.1. 内部是什么
-
MongoDB 组件, URI 语法:
mongodb:connectionBean
有关使用和配置详情,请参阅上述链接。
2.56.2. Maven 协调
在 code.quarkus.redhat.com 上使用此扩展创建一个新项目
或者将协调添加到现有项目中:
<dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-mongodb</artifactId> </dependency>
2.56.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 扩展客户端注入 中所述。例如:
//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 文档。