JMS提供五种格式的消息体.每种格式都通过一个消息接口定义.
1、TextMessage – 消息体包含了一个java.lang.String. 包含这种这种消息类型是考虑到String 消息将被广泛使用的前提.另外一个原因就是XML将可能变成一种用来表示JMS消息内容 的主流机制.
2、ObjectMessage –消息包含了一个可序列化的Java对象.如果需要Java对象集合 (collection) , 可以是JDK 1.2提供的集合类型中的任何一种.
3、BytesMessage – 消息包含了一个不间断的字节流.这个消息类型是用来以文字方式编码 一个消息体以匹配存在的消息格式.在很多种情况下,它可能被用于以下用途:自定义的
消息类型,尽管JMS允许使用带有字节的消息属性,但它们通常不能被使用,因为包含的 属性可以影响格式.
4、StreamMessage – 消息体包含了一个Java primitive 流,这个流被顺序地填充和读取.
5、MapMessage – 消息体包含了一系列的名字-值对.名字是Strings,而值则是Java primitive 类型.消息体中的条目可以被enumerator按照顺序访问,也可以自由访问.条目的顺序没 有定义.