前言:ActiveMQ消息模式点对点编码

运行:先运行消费者在开启消息生产者即可接收到消息

消息生产者

/**
* @摘要 测试发送单条数据的类
*/
public class ZMQOneSendTest{
public static void main(String[] args) throws Exception {
//1 .开始建立连接时间
Long nStartTime = System.currentTimeMillis(); // 2.建立连接工厂
org.apache.activemq.ActiveMQConnectionFactory nFactory = new org.apache.activemq.ActiveMQConnectionFactory("tcp://localhost:61616"); // 3.用工厂建立Connection连接
javax.jms.Connection nConnection = nFactory.createConnection(); // 4.创建会话Session,不启动事务,签收模式为自动确认模式
javax.jms.Session nSession = nConnection.createSession(false,javax.jms.Session.AUTO_ACKNOWLEDGE); // 5.创建队列
javax.jms.Destination nDestination = nSession.createQueue("123"); // 6.创建生产者
javax.jms.MessageProducer nProducer = nSession.createProducer(nDestination); // 7.设置持久化
nProducer.setDeliveryMode(javax.jms.DeliveryMode.PERSISTENT); // 8.启动连接
nConnection.start(); // 9.查询开始时间
Long nStartSelectTime = System.currentTimeMillis(); // 10.查询结束时间
Long nEndSelectTime = System.currentTimeMillis(); // 11.创建消息
javax.jms.TextMessage nMessage = nSession.createTextMessage();
nMessage.setText("我是发送的数据"); // 12.发送开始时间
Long nStartSendTime = System.currentTimeMillis(); // 13.生产者发布消息
nProducer.send(nMessage); // 14.消息结束时间
Long nEndSendTime = System.currentTimeMillis(); // 15.打印消息
System.out.println("已发送消息 "+nMessage); // 16.关闭发布者、会话、连接
nProducer.close();
nSession.close();
nConnection.close();
// 17.计算时间
System.out.println("查询消息时间 "+(nEndSelectTime-nStartSelectTime));
System.out.println("发送消息时间"+(nEndSendTime-nStartSendTime));
System.out.println("总时间"+(nEndSendTime-nStartTime));
} }

消息消费者


public class ZMQReadTest {
public static void main(String[] args) throws javax.jms.JMSException {
// 1.建立连接工厂
org.apache.activemq.ActiveMQConnectionFactory nFactory = new org.apache.activemq.ActiveMQConnectionFactory("tcp://localhost:61616"); // 2.用工厂建立Connection连接
javax.jms.Connection nTopicConnection = nFactory.createConnection(); // 3.创建会话Session,不启动事务,签收模式为自动确认模式
javax.jms.Session nSession = nTopicConnection.createSession(false, javax.jms.Session.AUTO_ACKNOWLEDGE); // 4.创建队列
javax.jms.Destination nDestination = nSession.createQueue("123"); // 5.创建消费者
javax.jms.MessageConsumer nConsumer = nSession.createConsumer(nDestination);
// 6.为消费者添加消息监听器,onMessage方法接收消息
nConsumer.setMessageListener(new javax.jms.MessageListener() {
public void onMessage(javax.jms.Message nMessage) {
try {
if (nMessage instanceof javax.jms.TextMessage) {
String nTextMessage = ((javax.jms.TextMessage) nMessage).getText();
System.out.println("收到的消息:" + nTextMessage);
}
} catch (javax.jms.JMSException e) {
e.printStackTrace();
}
}
}); // 7.开启连接
nTopicConnection.start();
}
}

最新文章

  1. ubuntu14.04 yuv文件的播放及视频信息的查看
  2. 51Nod 1079 中国剩余定理 Label:数论
  3. [ACM训练] DEV C++如何处理不能调试
  4. 动态linq表达式新方法,Dynamic LINQ Extension Method
  5. mysql:通用查询日志general_log
  6. Java——(九)IO流
  7. 6、Cocos2dx 3.0游戏开发找小三之游戏的基本概念
  8. JSON 解析第三方框架
  9. Mylyn
  10. 【Demo 0004】Android 布局
  11. FrameBuffer系列 之 相关结构与结构体
  12. 初次见面 你好EF
  13. centos安装rabbitmq
  14. Cocos Creator 橡皮差(刮刮卡)功能(转)
  15. Window下对nodejs多版本管理GNVM
  16. 虚拟机virtualBox安装linux系统 xshell远程连接linux
  17. 如何在64位WIN7旗舰版下安装SQL2000
  18. python总结--目录(转)
  19. 4 kafka集群部署及kafka生产者java客户端编程 + kafka消费者java客户端编程
  20. php正则验证邮箱、手机号、姓名、身份证、特殊符号等

热门文章

  1. Excel中的常用功能
  2. php ActiveMQ的安装与使用
  3. OnActionExecuting验证用户登录
  4. [z]一分钟教你知道乐观锁和悲观锁的区别
  5. C#读取Excel表中的数据时混合字段部分数据没有
  6. C#使用MiniDump捕获异常
  7. c# 关于字典dictionary 按时间排序
  8. URLEncoder.encode转译后“空格”变“加号”的问题的解决方案
  9. PAT 1033 旧键盘打字(20)(20 分)
  10. 安卓项目R,java文件不能自动更新,clean之后,R.java消失 (转自 Cynosure鱼)