首页 > 代码库 > spring中配置监听队列的MQ
spring中配置监听队列的MQ
一、spring中配置监听队列的MQ相关信息
注:${}是读取propertites文件的常量,这里忽略。绿色部分配置在接收和发送端都要配置。
注:${}是读取propertites文件的常量,这里忽略。绿色部分配置在接收和发送端都要配置。
<bean id="axx" class="com.ibm.mq.jms.MQQueueConnectionFactory">
<property name="hostName" value="http://www.mamicode.com/${}" />
<property name="port" value="http://www.mamicode.com/${}" />
<property name="queueManager" value="http://www.mamicode.com/${}" />
<property name="channel" value="http://www.mamicode.com/${}" />
<property name="CCSID" value="http://www.mamicode.com/${}" />
<property name="transportType" value="http://www.mamicode.com/1"/>
</bean>
<property name="port" value="http://www.mamicode.com/${}" />
<property name="queueManager" value="http://www.mamicode.com/${}" />
<property name="channel" value="http://www.mamicode.com/${}" />
<property name="CCSID" value="http://www.mamicode.com/${}" />
<property name="transportType" value="http://www.mamicode.com/1"/>
</bean>
<bean id="bxx"
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="targetConnectionFactory" ref="axx" />
</bean>
<!-- 定义一个队列,因为mq中消息有queue和topic的区别 -->
<bean id="qxx" class="com.ibm.mq.jms.MQQueue">
<constructor-arg index="0" value="http://www.mamicode.com/${mq.queueManager}" />
<constructor-arg index="1" value="http://www.mamicode.com/${mq.corp.rev.queue}" />
</bean>
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="targetConnectionFactory" ref="axx" />
</bean>
<!-- 定义一个队列,因为mq中消息有queue和topic的区别 -->
<bean id="qxx" class="com.ibm.mq.jms.MQQueue">
<constructor-arg index="0" value="http://www.mamicode.com/${mq.queueManager}" />
<constructor-arg index="1" value="http://www.mamicode.com/${mq.corp.rev.queue}" />
</bean>
<!-- 定义监听队列的容器,注意容器下包含的属性变量,至少要有前三个-->
<bean id="lxx"
class="org.springframework.jms.listener.DefaultMessageListenerContainer"
lazy-init="false">
<property name="connectionFactory" ref="bxx" />
<property name="destination" ref="qxx" />
<property name="messageListener" ref="testListener" />
<property name="sessionTransacted" value="http://www.mamicode.com/true"/>
</bean>
class="org.springframework.jms.listener.DefaultMessageListenerContainer"
lazy-init="false">
<property name="connectionFactory" ref="bxx" />
<property name="destination" ref="qxx" />
<property name="messageListener" ref="testListener" />
<property name="sessionTransacted" value="http://www.mamicode.com/true"/>
</bean>
<!-- 定义队列使用的监听器类,有三种,这里不想说了。这个类配置在监听容器里了,一直监听队列,对消息进行处理->
<bean id="testListener" class="某个实现了jmsListener的实现类,如继承了MessageListener" />
<bean id="testListener" class="某个实现了jmsListener的实现类,如继承了MessageListener" />
一、spring中配置发送消息的jmsTemplete的MQ相关信息
<bean id="axx" class="com.ibm.mq.jms.MQQueueConnectionFactory">
<bean id="axx" class="com.ibm.mq.jms.MQQueueConnectionFactory">
<property name="hostName" value="http://www.mamicode.com/${}" />
<property name="port" value="http://www.mamicode.com/${}" />
<property name="queueManager" value="http://www.mamicode.com/${}" />
<property name="channel" value="http://www.mamicode.com/${}" />
<property name="CCSID" value="http://www.mamicode.com/${}" />
<property name="transportType" value="http://www.mamicode.com/1"/>
</bean>
<property name="port" value="http://www.mamicode.com/${}" />
<property name="queueManager" value="http://www.mamicode.com/${}" />
<property name="channel" value="http://www.mamicode.com/${}" />
<property name="CCSID" value="http://www.mamicode.com/${}" />
<property name="transportType" value="http://www.mamicode.com/1"/>
</bean>
<bean id="bxx"
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="targetConnectionFactory" ref="axx" />
</bean>
<!-- 定义一个队列,因为mq中消息有queue和topic的区别 -->
<bean id="qxx" class="com.ibm.mq.jms.MQQueue">
<constructor-arg index="0" value="http://www.mamicode.com/${mq.queueManager}" />
<constructor-arg index="1" value="http://www.mamicode.com/${mq.corp.rev.queue}" />
</bean>
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="targetConnectionFactory" ref="axx" />
</bean>
<!-- 定义一个队列,因为mq中消息有queue和topic的区别 -->
<bean id="qxx" class="com.ibm.mq.jms.MQQueue">
<constructor-arg index="0" value="http://www.mamicode.com/${mq.queueManager}" />
<constructor-arg index="1" value="http://www.mamicode.com/${mq.corp.rev.queue}" />
</bean>
<bean id="objJms" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="bxx" />
<property name="defaultDestination" ref="qxx" />
</bean>
<bean id="oxx" name="oxxx" class="某个自定义的发送类,直接使用自己的变量jmsTemplate的API进行send消息就ok了">
<property name="jmsTemplate" ref="objJms" />
</bean>
<property name="connectionFactory" ref="bxx" />
<property name="defaultDestination" ref="qxx" />
</bean>
<bean id="oxx" name="oxxx" class="某个自定义的发送类,直接使用自己的变量jmsTemplate的API进行send消息就ok了">
<property name="jmsTemplate" ref="objJms" />
</bean>
在service业务类中直接注入“oxx”类,就可以发消息到MQ了,那边一直监听的类就可以取到消息了。
spring中配置监听队列的MQ
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。