Spring RabbitMq

时间:2022-09-15 19:07:32

spring-rabbitmq.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/rabbit
http://www.springframework.org/schema/rabbit/spring-rabbit-1.2.xsd">

<!-- 连接服务配置 -->
<rabbit:connection-factory id="connectionFactory"
host="192.168.1.107" username="root" password="123456" port="5672" virtual-host="log_monitor_mq"/>

<!-- <rabbit:connection-factory id="connectionFactory"
host="192.168.0.200" username="root" password="123456" port="5672" virtual-host="log_monitor_mq"/>
-->
<rabbit:admin connection-factory="connectionFactory" />

<!-- queue 队列声明 -->
<rabbit:queue id="transfer_queue" durable="true" auto-delete="false"
exclusive="false" name="transfer_queue" />

<!-- exchange queue binging key 绑定 -->

<rabbit:direct-exchange name="monitor_exchange"
durable="true" auto-delete="false" id="monitor_exchange" auto-declare="true">
<rabbit:bindings>
<rabbit:binding queue="transfer_queue" key="transfer_queue_key" />
</rabbit:bindings>
</rabbit:direct-exchange>

<!-- spring amqp默认的是jackson
的一个插件,目的将生产者生产的数据转换为json存入消息队列,由于fastjson的速度快于jackson,这里替换为fastjson的一个实现
-->
<bean id="jsonMessageConverter" class="org.springframework.amqp.support.converter.JsonMessageConverter" />

<!-- spring template声明-->
<rabbit:template exchange="monitor_exchange" id="amqpTemplate"
connection-factory="connectionFactory" message-converter="jsonMessageConverter" />
</beans>