Spring 集成 reference guide指的是使用 MessageStore 实现来为 QueueChannel 提供持久性。
它被多次提及,但所有示例都使用 XML 配置,即
<int:channel id="dbBackedChannel">
<int:queue message-store="channelStore"/>
</int:channel>
<bean id="channelStore" class="o.s.i.jdbc.store.JdbcChannelMessageStore">
<property name="dataSource" ref="dataSource"/>
<property name="channelMessageStoreQueryProvider" ref="queryProvider"/>
</bean>
但是QueueChannel的执行没有设置 MessageStore 的方法
那么如何在不使用 XML 配置的情况下创建带有 MessageStore 的 QueueChannel?
最佳答案
逆向工程 XML 配置所做的,这就是答案。
您将 MessageStore 包装在 MessageGroupQueue 中
所以它看起来像这样
@Bean
public MessageChannel messageStoreBackedChannel() {
return new QueueChannel(
new MessageGroupQueue(<<MessageStoreImplementation>>, "Group ID")
);
}
关于java - MessageStore 通过 Spring Integration+ Java Config 支持 QueueChannel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32538885/