je dois interroger les données de MongoDB en utilisant l'intégration de printemps, je peux pouvoir interroger les données de MongoDB, mais les mêmes données sont renvoyées plus d'une fois,Spring Integration - MongoDB canal entrant en lisant les mêmes données
<bean id="mongoDBFactory"
class="org.springframework.data.mongodb.core.SimpleMongoDbFactory">
<constructor-arg name="mongo">
<bean class="com.mongodb.Mongo">
<constructor-arg name="host" value="localhost" />
<constructor-arg name="port" value="27017" />
</bean>
</constructor-arg>
<constructor-arg name="databaseName" value="test" />
</bean>
<int:channel id="controlChannel"/>
<int:control-bus input-channel="controlChannel"/>
<int-mongodb:inbound-channel-adapter
id="mongoInboundAdapter" channel="splittingChannel" auto-startup= "false"
query="{_id:1}"
collection-name="order"
mongodb-factory="mongoDBFactory">
<int:poller fixed-rate="10000" max-messages-per-poll="1000"/>
</int-mongodb:inbound-channel-adapter>
<int:splitter input-channel="splittingChannel" output-channel="logger"/>
<int:logging-channel-adapter id="logger" level="WARN"/>
J'utilise le canal de contrôle pour démarrer et arrêter, s'il vous plaît aidez-moi comment puis-je arrêter l'adaptateur de canal entrant une fois la requête terminée.
Merci à l'avance
Je n'ai pas besoin de supprimer ou de modifier un document dans la base de données, je veux juste lire tous les documents correspondant à la requête @Artem Bilan – Vigneshwaran
Eh bien, d'accord. Pensez à utiliser ensuite ': https://docs.spring.io/spring-integration/docs/5.0.0.M6/reference/html/mongodb.html#mongodb-outbound- passerelle. Ou juste 'MongoTemplate' directement. Cependant, vous pouvez utiliser la même approche de synchronisation des transactions pour arrêter l'interrogation Channel Adapter –