spring activeMQ 整合(一): 一个简单的demo,测试消息的发送与接收
2017-08-02 10:55
846 查看
环境:
windows环境下: spring 3.2.8 、Tomcat 7 、JDK 1.6 、 ActiveMQ 5.9.0
项目目录结构:
applicationContext.xml
[html] view
plain copy
<!--创建连接工厂 -->
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://localhost:61616"></property>
</bean>
<!-- 声明ActiveMQ消息目标,目标可以是一个队列,也可以是一个主题ActiveMQTopic -->
<bean id="destinationOne" class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg index="0" value="testQueOne"></constructor-arg>
</bean>
<!-- 设置 消息目的地 start -->
<bean id="jmsTemplateOne" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="connectionFactory"></property>
<property name="defaultDestination" ref="destinationOne"></property>
<property name="receiveTimeout" value="6000"></property>
</bean>
<!-- 设置 消息目的地 end -->
<!-- 配置生产者 start -->
<bean id="senderOne" class="com.dly.avtivemqtest.SenderOne">
<property name="jmsTemplateOne" ref="jmsTemplateOne"></property>
</bean>
<!-- 配置生产者 end -->
<!-- 配置消费者 start -->
<bean id="receiverOne" class="com.dly.avtivemqtest.ReceiverOne">
<!-- <property name="jmsTemplate" ref="jmsTemplate"></property> -->
</bean>
<!-- 配置消费者 end -->
<!-- 消息监听器 -->
<bean id="consumerMessageListenerOfOne" class="com.dly.avtivemqtest.ReceiverOne" />
<!-- 消息监听容器 消息接收监听器用于异步接收消息 -->
<bean id="jmsContainerOne" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory" />
<property name="destination" ref="destinationOne" />
<property name="messageListener" ref="consumerMessageListenerOfOne" />
</bean>
lt;/beans>
SenderOne.java
[html] view
plain copy
public class SenderOne {
private JmsTemplate jmsTemplateOne;
public JmsTemplate getJmsTemplateOne() {
return jmsTemplateOne;
}
public void setJmsTemplateOne(JmsTemplate jmsTemplateOne) {
this.jmsTemplateOne = jmsTemplateOne;
}
//测试的
public void sendInfo(final String messageRecord,final String flag) {
jmsTemplateOne.send(new MessageCreator() {
public Message createMessage(Session session) throws JMSException {
TextMessage message = session.createTextMessage();
return message;
}
});
}
}
ReceiverOne.java
[html] view
plain copy
public class ReceiverOne implements MessageListener {
//测试方法
public void onMessage(Message message, Session session) {
//这里我们知道生产者发送的就是一个纯文本消息,所以这里可以直接进行强制转换
TextMessage textMsg = (TextMessage) message;
try {
String endStr = textMsg.getText();
Integer endInt = Integer.parseInt(endStr);
System.out.println("消息:==="+endInt);
} catch (Exception e) {
e.printStackTrace();
System.out.println("异常信息是:===:" + e.getMessage());
}
}
}
JMSTest.java
[html] view
plain copy
public class JMSTest {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("resources/applicationContext.xml");
SenderOne sender = (SenderOne) context.getBean("senderOne");
sender.sendInfo("10","2");
}
}
运行JMSTest的结果:
看到控制台答应出来的 2 ,就说明 这个消息是发送成功 并且能,成功接收的,说明我们的topic消息的发送与接收是成功的。
原文地址:http://blog.csdn.net/dly1580854879/article/details/68488003
相关文章推荐
- Spring ActiveMQ 整合(一): 一个简单的demo,测试消息的发送与接收
- 第二篇:spring+activeMQ实现消息队列简单demo
- spring整合activemq发送MQ消息[Topic模式]实例,activemqmq
- spring activeMQ 整合(二): 重发机制(消息发送失败后的重新发送)
- Spring ActiveMQ 整合(三): 确认机制ACK(收到消息后,应该有一个回应也就是确认答复)
- jms+spring+activemq配置(发送和接收消息)
- jms+spring+activemq配置(发送和接收消息)
- spring boot整合spring-kafka实现发送接收消息实例代码
- JAVA ActiveMQ消息发送和接收
- Spring + JMS + ActiveMQ实现简单的消息队列(监听器异步实现)
- [ActiveMQ]发送消息与接收消息测试Demo
- Spring+ActiveMQ整合测试
- Spring ActiveMQ整合+注解消息监听
- Spring + ActiveMQ实现jms发送消息
- Spring + ActiveMQ实现jms发送消息
- Spring + ActiveMQ实现jms发送消息
- 利用Spring与ActiveMQ整合发送、接收消息实例(Queue与Topic模式)
- QUdpSocket简单使用Demo(局域网内发送给所有客户端消息与接收)
- 一个简单的Dubbo+Zookeeper+Spring整合Demo,附带源码
- Spring + ActiveMQ兑现jms发送消息