1 / 15
文档名称:

《J2EE前沿技术》第04章[消息驱动Bean的开发]理论课.ppt

格式:ppt   页数:15
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《J2EE前沿技术》第04章[消息驱动Bean的开发]理论课.ppt

上传人:所以所以 2012/6/10 文件大小:0 KB

下载得到文件列表

《J2EE前沿技术》第04章[消息驱动Bean的开发]理论课.ppt

文档介绍

文档介绍:消息驱动Bean的开发
《J2EE前沿技术》第04章
本章目标
理解Java消息处理的基本概念
理解消息驱动Bean的概念
掌握JBOSS服务器下消息驱动Bean的开发
JMS概述
什么是消息?
消息是软件组件或应用之间的一种通信方法。消息系统是一种对等(peer-to-peer)的系统:消息客户可以向其他客户发送消息,也可以接收来自其他客户的消息
什么是JMS?
Java消息服务(JMS)是一组Java应用程序接口(Java API),它提供创建、发送、接收、读取消息的服务
JMS API不仅使通信变得松散耦合,而且它还使通信变得:
异步:JMS提供者将到来的消息发送给客户,客户不用发送请求接收消息。
可靠:JMS API确保消息传送一次而且只传送一次。可靠性差的应用程序
可能会丢失消息或者重复接收消息
JMS概述
JMS 和JBoss
JBOSS JMS消息传递
JMS概述
消息组成
头(header)是个标准字段集,客户机和供应商都用它来标识和路由消息
JMSMessageID
标识提供者发送的每一条消息, 发送过程中由提供者设置
JMSDestination
消息发送的Destination, 由提供者设置
JMSDeliveryMode
(被且只被传输一次)和
(最多被传输一次)
JMSTimestamp
提供者发送消息的时间, 由提供者设置
JMSExpiration
消息失效的时间, 是发送方法的生存时间和当前时间值的和, 0 表明消息不会过期
JMSPriority
由提供者设置, 0 最低, 9 最高
JMSCorrelationID
用来链接响应消息和请求消息, 由发送消息的JMS 程序设置
JMSReplyTo
请求程序用它来指出回复消息应发送的地方
JMSType
JMS 程序用来指出消息的类型
JMSRedelivered
消息被过早的发送给了JMS 程序, 程序不知道消息的接受者是谁
JMS概述
消息组成
属性(property)支持把可选头字段添加到消息。
如果您的应用程序需要不使用标
JMSXUserID
发送消息的用户的身份
JMSXAppID
发送消息的应用程序的身份
JMSXDeliveryCount
尝试发送消息的次数
JMSXGroupID
该消息所属的消息组的身份
JMSXGroupSeq
该消息在消息组中的序号
JMSXProducerTxID
生成该消息的事物的身份
JMSXConsumerTxID
使用该消息的事物的身份
JMSXRcvTimestamp
JMS 将消息发送给客户的时间
JMS概述
消息组成
消息的主体(body)包含要发送给接收应用程序的内容
StreamMessage
包含Java 基本数值流,用标准流操作来顺序的填充和读取。
MapMessage
包含一组名/值对;名称为string 类型,而值为Java 的基本类型。
TextMessage
包含一个String。
ObjectMessage
包含一个Serializable Java 对象;能使用JDK 的集合类。
BytesMessage
包含未解释字节流:编码主体以匹配现存的消息格式。
JMS消息传递模型
PTP 消息传递模型规定了一条消息只能传递给一个接收方。
JBOSS服务PTP消息传递模型
JMS消息传递模型
Pub/sub 消息传递模型允许一条消息传递给多个接收方
JBOSS服务pub/sub消息传递模型
消息驱动Bean 1
Queue 消息的发送与接收(PTP 消息传递模型)
QueueConnection conn = null;
QueueSession sessionMsg = null;
try {
InitialContext ctx = new InitialContext();
QueueConnectionFactory factory = (QueueConnectionFactory)("ConnectionFactory");
conn = ();
sessionMsg = (false,);
Destination destination = () ("queue/newer"