1.打开activemq资源包--找到credentials.properties打开后修改密码;
2.接下来修改你的Spring的相关生产者和消费者相关配置;
2.1生产者配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:jms="http://www.springframework.org/schema/jms"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/jms
http://www.springframework.org/schema/jms/spring-jms-4.0.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core-5.6.0.xsd">
<!-- <amq:connectionFactory id="amqConnectionFactory"
brokerURL="tcp://127.0.0.1:61616" userName="admin" password="admin" /> -->
<bean id="connectionFactory" class="org.apache.activemq.spring.ActiveMQConnectionFactory">
<!-- <property name="brokerURL" value="tcp://10.86.38.17:61616" /> -->
<property name="brokerURL" value="tcp://10.86.38.17:61616" />
<property name="userName" value="super"></property>
<property name="password" value="Rfid123456"></property>
<property name="useAsyncSend" value="true" />
<!-- ActiveMQ服务默认采用异步的方式向消费者推送消息 -->
<property name="dispatchAsync" value="true"></property>
</bean>
<!-- 生产者 -->
<!-- topic模板 -->
<bean id="jmsTopicTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="connectionFactory" />
<property name="defaultDestination" ref="deviceStateTopicDestination" />
<!-- pub/sub模型(发布/订阅)即 主题主题-订阅者模式 -->
<property name="pubSubDomain" value="true" />
<property name="receiveTimeout" value="60000"/>
</bean>
<!-- 扫描消费者类所在的包 -->
<context:component-scan base-package="com.zit.activemq" />
<!-- 发布“设备状态”的订阅 -->
<bean id="deviceStateTopicDestination" class="org.apache.activemq.command.ActiveMQTopic">
<constructor-arg>
<value>deviceStateTopic</value>
</constructor-arg>
</bean>
<!-- 发布“射频记录”的订阅 -->
<bean id="rfidRecordTopicDestination" class="org.apache.activemq.command.ActiveMQTopic">
<constructor-arg>
<value>rfidRecordTopic</value>
</constructor-arg>
</bean>
</beans>
2.2消费者配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:jms="http://www.springframework.org/schema/jms"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/jms
http://www.springframework.org/schema/jms/spring-jms-4.0.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core-5.2.0.xsd">
<bean id="consumerConnectionFactory" class="org.apache.activemq.spring.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://10.86.38.17:61616" />
<property name="userName" value="super"></property>
<property name="password" value="Rfid123456"></property>
<property name="useAsyncSend" value="true" />
<!-- ActiveMQ服务默认采用异步的方式向消费者推送消息 -->
<property name="dispatchAsync" value="true"></property>
</bean>
<!-- 设别状态的消费者 -->
<bean id="deviceStateConsumer" class="com.zit.activemq.main.consumer.DeviceStateConsumer"></bean>
<jms:listener-container destination-type="topic"
connection-factory="consumerConnectionFactory"
acknowledge="auto">
<jms:listener destination="deviceStateTopic" ref="deviceStateConsumer" />
</jms:listener-container>
<!-- 射频记录的消费者 -->
<bean id="rfidRecordConsumer" class="com.zit.activemq.main.consumer.RfidRecordConsumer"></bean>
<jms:listener-container destination-type="topic"
connection-factory="consumerConnectionFactory"
acknowledge="auto">
<jms:listener destination="rfidRecordTopic" ref="rfidRecordConsumer" />
</jms:listener-container>
<!-- 视频记录的消费者 -->
<bean id="cameraRecordConsumer" class="com.zit.activemq.main.consumer.CameraRecordConsumer"></bean>
<jms:listener-container destination-type="topic"
connection-factory="consumerConnectionFactory"
acknowledge="auto">
<jms:listener destination="cameraRecordTopic" ref="cameraRecordConsumer" />
</jms:listener-container>
<!-- 双基记录的消费者 -->
<bean id="dbssRecordConsumer" class="com.zit.activemq.main.consumer.DbssRecordConsumer"></bean>
<jms:listener-container destination-type="topic"
connection-factory="consumerConnectionFactory"
acknowledge="auto">
<jms:listener destination="dbssRecordTopic" ref="dbssRecordConsumer" />
</jms:listener-container>
</beans>