MQ xml配置

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

    <description>rabbitmq 連接服務配置</description>


    <!-- 連接配置 -->
    <rabbit:connection-factory id="connectionFactory" host="${mq.host}" username="${mq.username}" password="${mq.password}" port="${mq.port}" virtual-host="${mq.vhost}"/>
    <rabbit:admin connection-factory="connectionFactory"/>

    <!-- spring template聲明-->
    <rabbit:template exchange="test-exchange" id="sendTemplate" connection-factory="connectionFactory" message-converter="jsonMessageConverter"/>

    <!-- 消息對象json轉換類 -->
    <bean id="jsonMessageConverter" class="org.springframework.amqp.support.converter.Jackson2JsonMessageConverter"/>

    <!--
        durable:是否持久化
        exclusive: 僅創建者可以使用的私有隊列,斷開後自動刪除
        auto_delete: 當所有消費客戶端連接斷開後,是否自動刪除隊列
     -->
    <rabbit:queue id="test.pullimage.result" name="test.pullimage.result" durable="true" auto-delete="false" exclusive="false"/>
    <rabbit:queue id="test.fileprocess.result" name="test.fileprocess.result" durable="true" auto-delete="false" exclusive="false"/>

    <rabbit:direct-exchange name="test-exchange" durable="true" auto-delete="false" id="test-exchange">
        <rabbit:bindings>
            <rabbit:binding queue="test.pullimage.result" key="test.pullimage.result"></rabbit:binding>
            <rabbit:binding queue="test.fileprocess.result" key="test.fileprocess.result"></rabbit:binding>
        </rabbit:bindings>
    </rabbit:direct-exchange>

    <!-- 配置監聽 -->
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="manual">
        <rabbit:listener queue-names="test.pullimage.result" ref="messageImagePullResult"/>
    </rabbit:listener-container>

    <!-- 配置監聽>
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="manual" >
        <rabbit:listener queue-names="webank.fileprocess.result" ref="messageCompelSettleApproval"/>
    </rabbit:listener-container>

    <bean id="messageImagePullResult" class="com.test.mq.MessageImagePullResult"/>

    <bean id="messageCompelSettleApproval" class="com.test.mq.MessageCompelSettleApproval"/>
</beans>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章