Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 56. MongoDB
Perform operations on MongoDB documents and collections.
56.1. What’s inside Copier lienLien copié sur presse-papiers!
-
MongoDB component, URI syntax:
mongodb:connectionBean
Please refer to the above link for usage and configuration details.
56.2. Maven coordinates Copier lienLien copié sur presse-papiers!
Create a new project with this extension on code.quarkus.redhat.com
Or add the coordinates to your existing project:
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-mongodb</artifactId>
</dependency>
56.3. Additional Camel Quarkus configuration Copier lienLien copié sur presse-papiers!
The extension leverages the Quarkus MongoDB Client extension. The Mongo client can be configured via the Quarkus MongoDB Client configuration options.
The Camel Quarkus MongoDB extension automatically registers a MongoDB client bean named camelMongoClient. This can be referenced in the mongodb endpoint URI connectionBean path parameter. For example:
from("direct:start")
.to("mongodb:camelMongoClient?database=myDb&collection=myCollection&operation=findAll")
If your application needs to work with multiple MongoDB servers, you can create a "named" client and reference in your route by injecting a client and the related configuration as explained in the Quarkus MongoDB extension client injection. For example:
//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");
}
}
Note that when using named clients, the "default" camelMongoClient bean will still be produced. Refer to the Quarkus documentation on Multiple MongoDB Clients for more information.