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. vlc sdl2.0 播放示例

    #include <stdio.h> #include <stdint.h> #include <math.h> #include <stdlib.h> ...

  2. Ubuntu/Unity中更改窗口修饰键Alt为Super

    在Ubuntu中的Unity桌面环境里,可以使用Alt配合鼠标左键拖动窗口,这一方便的设定有许多不方便的地方.和很多的软件有热键上的冲突,比如Visual Stdio Code的多光标控制功能. 注意 ...

  3. 字符串格式化(七)-format

    print("i am %s" %'admin') # i am admin msg = "i am %s" %'Alex' print(msg) # i am ...

  4. P2885 [USACO07NOV]电话线Telephone Wire

    P2885 [USACO07NOV]电话线Telephone Wire 最近,Farmer John的奶牛们越来越不满于牛棚里一塌糊涂的电话服务于是,她们要求FJ把那些老旧的电话线换成性能更好的新电话 ...

  5. Neural Networks and Deep Learning(week2)Logistic Regression with a Neural Network mindset(实现一个图像识别算法)

    Logistic Regression with a Neural Network mindset You will learn to: Build the general architecture ...

  6. python 爆破

    python 爆破 #!/usr/bin/python #-*- coding: GB2312 -*- #author:loversorry import urllib2 import urllib ...

  7. luogu 4401 矿工配餐 多维dp

    五维dp,记忆化搜索会MLE超内存,所以用滚动数组,十分经典 五维dp #include <bits/stdc++.h> using namespace std; ; ][][][],la ...

  8. node版本管理工具nvm安装以及使用

    curl命令安装 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash 或者 使用wg ...

  9. 如何在同一台服务器上部署两个tomcat

    因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...

  10. JavaScript学习 - 基础(一)

    ECMAscript ECMAscript是一个重要的标准,但它并不是JAVAscript唯一的部分,当然,也不是唯一标准化的部分,实际上,一个完整的JAVAscript实现是由一下3个不同的部分组成 ...