Spring Integration 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?
答案 0 :(得分:4)
反向设计XML配置的功能,这就是答案。
中包装了MessageStore所以它看起来像这样
@Bean
public MessageChannel messageStoreBackedChannel() {
return new QueueChannel(
new MessageGroupQueue(<<MessageStoreImplementation>>, "Group ID")
);
}