1. //文本消息
  2. TextMessage textMessage = session.createTextMessage("文本消息");
  3. producer.send(textMessage);
  4. //键值对消息
  5. MapMessage mapMessage = session.createMapMessage();
  6. mapMessage.setLong("age", new Long(32));
  7. mapMessage.setDouble("sarray", new Double(5867.15));
  8. mapMessage.setString("username", "键值对消息");
  9. producer.send(mapMessage);
  10. //流消息
  11. StreamMessage streamMessage = session.createStreamMessage();
  12. streamMessage.writeString("streamMessage流消息");
  13. streamMessage.writeLong(55);
  14. producer.send(streamMessage);
  15. //字节消息
  16. String s = "BytesMessage字节消息";
  17. BytesMessage bytesMessage = session.createBytesMessage();
  18. bytesMessage.writeBytes(s.getBytes());
  19. producer.send(bytesMessage);
  20. //对象消息
  21. User user = new User("cjm", "对象消息"); //User对象必须实现Serializable接口
  22. ObjectMessage objectMessage = session.createObjectMessage();
  23. objectMessage.setObject(user);
  24. producer.send(objectMessage);
  1. if(m instanceof TextMessage){ //接收文本消息
  2. TextMessage message = (TextMessage)m;
  3. System.out.println(message.getText());
  4. }else if(m instanceof MapMessage){ //接收键值对消息
  5. MapMessage message = (MapMessage)m;
  6. System.out.println(message.getLong("age"));
  7. System.out.println(message.getDouble("sarray"));
  8. System.out.println(message.getString("username"));
  9. }else if(m instanceof StreamMessage){ //接收流消息
  10. StreamMessage message = (StreamMessage)m;
  11. System.out.println(message.readString());
  12. System.out.println(message.readLong());
  13. }else if(m instanceof BytesMessage){ //接收字节消息
  14. byte[] b = new byte[1024];
  15. int len = -1;
  16. BytesMessage message = (BytesMessage)m;
  17. while((len=message.readBytes(b))!=-1){
  18. System.out.println(new String(b, 0, len));
  19. }
  20. }else if(m instanceof ObjectMessage){ //接收对象消息
  21. ObjectMessage message = (ObjectMessage)m;
  22. User user = (User)message.getObject();
  23. System.out.println(user.getUsername() + " _ " + user.getPassword());
  24. }else{
  25. System.out.println(m);
  26. }

activemq 消息类型的更多相关文章

  1. Activemq消息类型

    Activemq消息类型JMS规范中的消息类型包括TextMessage.MapMessage.ObjectMessage.BytesMessage.和StreamMessage等五种.ActiveM ...

  2. Activemq 消息类型 (转)

    Activemq消息类型JMS规范中的消息类型包括TextMessage.MapMessage.ObjectMessage.BytesMessage.和StreamMessage等五种.ActiveM ...

  3. ActiveMQ之二--JMS消息类型

    1.前言 //发送文本消息 session.createTextMessage(msg); //接受文本消息 public void onMessage(Message msg) { TextMess ...

  4. 学习ActiveMQ(五):activemq的五种消息类型和三种监听器类型

    一.前面我们一直发送的是字符串类型,其实activemq一共支持五种消息类型: 1.String消息类型:发送者:消费者: 1.String消息类型:发送者:消费者: 1.String消息类型:发送者 ...

  5. ActiveMQ常见消息类型

    JMS由下面三部分组成:消息头.属性.消息体.其中消息体定义了五种消息体格式,也可以称为消息类型. JMS规范中的消息类型包括TextMessage.MapMessage.ObjectMessage. ...

  6. JAVA的设计模式之观察者模式----结合ActiveMQ消息队列说明

    1----------------------观察者模式------------------------------ 观察者模式:定义对象间一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的 ...

  7. JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用

    1. 学习计划 1.solr集群搭建 2.使用solrj管理solr集群 3.把搜索功能切换到集群版 4.添加商品同步索引库. a) Activemq b) 发送消息 c) 接收消息 2. 什么是So ...

  8. Activemq消息确认机制 --转载

      转自:http://blog.csdn.net/czp11210/article/details/47022639 ActiveMQ消息传送机制以及ACK机制详解 AcitveMQ是作为一种消息存 ...

  9. ActiveMQ消息的延时和定时投递

    ActiveMQ对消息延时和定时投递做了很好的支持,其内部启动Scheduled来对该功能支持,也提供了一个封装的消息类型:org.apache.activemq.ScheduledMessage,只 ...

随机推荐

  1. 本地Git与GitHub服务器建立连接(SSH方式通信)

    简介 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要 ...

  2. luogu3195/bzoj1010 玩具装箱(斜率优化dp)

    推出来式子然后斜率优化水过去就完事了 #include<cstdio> #include<cstring> #include<algorithm> #include ...

  3. Ubuntu安装Atom编辑器

    安装方法 执行以下命令 sudo add-apt-repository ppa:webupd8team/atom sudo apt-get update udo apt-get install ato ...

  4. 【POJ2248】加法链 idfs

    首先,在这道题的搜索框架中,在对每一位进行枚举时,复杂度为\(O(n^2)\),但是可知最优解序列的长度不会太长. 其次,采用 \(bool\) 类型返回值时,是一种存在性搜索,并不一定能够得到最优解 ...

  5. Linux替换指定列的字符串(awk 命令)

    假设有文件test.txt,想把test.txt文件第三列含有的good替换为bye,并把替换后的文件保存为test_bye.txt,只需要如下命令. test.txt go go good go m ...

  6. VS Code折腾记 - (2) 快捷键大全,没有更全

    前言 VSCode的快捷键继承了一些IDE风格,有VS的身影,也有Emacs的身影..简言之,内置快捷键玩熟了,效率提高不是一点两点. VsCode 快捷键有五种组合方式(科普) Ctrl + Shi ...

  7. 获取天气预报API

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  8. python自动化运维之路~DAY3

    python自动化运维之路~DAY3 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.函数 1.函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不 ...

  9. Redis 安全配置

    1.禁止一些高危命令 修改 redis.conf 文件,添加 rename-command FLUSHALL "" rename-command FLUSHDB "&qu ...

  10. 面向对象【day07】:类的实例化过程剖析(三)

    本节内容 1.概述 2.类的语法 3.总结 一.概述 之前我们说关于python中的类,都一脸懵逼,都想说,类这么牛逼到底是什么,什么才是类?下面我们就来讲讲,什么是类?它具有哪些特性. 二.类的语法 ...