既然你说你更愿意select
上的应用程序启动和只有一次,你可以使用:
<int-event:inbound-channel-adapter channel="jdbcChannel"
event-types="org.springframework.context.event.ContextRefreshedEvent"
payload-expression="''"/>
和<int-jdbc:outbound-gateway query="SELECT * FROM ..."/>
等方面WebService的。
UPDATE
既然你说你周围Anotation配置,可以考虑使用Spring Integration Java DSL。
从@Configuration
配置<int-event:inbound-channel-adapter>
你应该这样做:
@Bean
@SuppressWarnings("unchecked")
public MessageProducer ApplicationEventListeningMessageProducer() {
ApplicationEventListeningMessageProducer producer = new ApplicationEventListeningMessageProducer();
producer.setEventTypes(ContextRefreshedEvent.class);
producer.setPayloadExpression("''");
producer.setOutputChannel(jdbcChannel());
return producer;
}
ContextRefreshedEvent
信息,你可以从它的JavaDoc或Spring Framework Manual得到。
谢谢阿尔乔姆。出站网关似乎是一个很好的解决方案。由于我只使用带注释的配置工作,你能指出我在哪里可以找到关于ContextRefreshedEvent的更多信息? – crm86 2014-12-03 11:24:09
为注释配置变体添加了一个样本。 – 2014-12-03 11:54:43
有什么关于: 带注释。我试图创建一个JdbcOutboundGateway,但我得到'没有订户'异常 –
crm86
2014-12-03 18:46:28