activemq 消息类型

  1. //文本消息     
  2. TextMessage textMessage = session.createTextMessage("文本消息");     
  3. producer.send(textMessage);     
  4.     
  5. //键值对消息     
  6. MapMessage mapMessage = session.createMapMessage();     
  7. mapMessage.setLong("age", new Long(32));     
  8. mapMessage.setDouble("sarray", new Double(5867.15));     
  9. mapMessage.setString("username", "键值对消息");     
  10. producer.send(mapMessage);     
  11.     
  12. //流消息     
  13. StreamMessage streamMessage = session.createStreamMessage();     
  14. streamMessage.writeString("streamMessage流消息");     
  15. streamMessage.writeLong(55);     
  16. producer.send(streamMessage);     
  17.     
  18. //字节消息     
  19. String s = "BytesMessage字节消息";     
  20. BytesMessage bytesMessage = session.createBytesMessage();     
  21. bytesMessage.writeBytes(s.getBytes());     
  22. producer.send(bytesMessage);     
  23.     
  24. //对象消息     
  25. User user = new User("cjm", "对象消息"); //User对象必须实现Serializable接口     
  26. ObjectMessage objectMessage = session.createObjectMessage();     
  27. objectMessage.setObject(user);     
  28. 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.             }     
原文地址:https://www.cnblogs.com/sddychj/p/6588800.html