如何使用Spring集成配置简单RabbitMQ消息生成器

如何使用Spring集成配置简单RabbitMQ消息生成器,rabbitmq,spring-integration,amqp,Rabbitmq,Spring Integration,Amqp,我想使用Spring集成构造配置一个简单的RabbitMQ消息生成器。要求非常基本:只需简单的fire-and-forget,向队列发送事件消息,无需响应。 我已经配置了连接工厂、RabbitTemplate和出站通道适配器(见下文),但缺少最后一部分:实际将消息发送到通道的代码。 提前谢谢 <rabbit:connection-factory id="producerRabbitConnectionFactory" channel-cache-size="${amqp.

我想使用Spring集成构造配置一个简单的RabbitMQ消息生成器。要求非常基本:只需简单的fire-and-forget,向队列发送事件消息,无需响应。 我已经配置了连接工厂、RabbitTemplate和出站通道适配器(见下文),但缺少最后一部分:实际将消息发送到通道的代码。 提前谢谢

<rabbit:connection-factory id="producerRabbitConnectionFactory" 
        channel-cache-size="${amqp.channel.cache.size}"
        host="${amqp.hostname}"
        port="${amqp.port}" 
        virtual-host="${amqp.vhost}" 
        username="${amqp.username}"
        password="${amqp.password}"
        requested-heartbeat="${amqp.heartbeat}"
/>

<bean id="producerRabbitTemplate" class="org.springframework.amqp.rabbit.core.RabbitTemplate">
        <property name="connectionFactory" ref="producerRabbitConnectionFactory" />
        <property name="exchange" value="${amqp.exchange.event}" />
        <property name="routingKey" value="${amqp.routingKey.event}" />
</bean>

<int:channel id="outboundAmqpChannel" />

<int-amqp:outbound-channel-adapter id="outboundAmqpChannelAdapter"
                               channel="outboundAmqpChannel"
                               amqp-template="producerRabbitTemplate"
                               default-delivery-mode="NON_PERSISTENT"
                               lazy-connect="true"/>

最简单的是一个。这样,您的代码就不知道您在与集成流对话

public interface Foo {

    void bar(String foo);

}

<int:gateway service-interface="foo.Foo" default-request-channel="outboundAmqpChannel" />
公共接口Foo{
空条(字符串foo);
}
Foo
注入代码并调用它