JavaEE第11次

JavaEE第11次

ID:40556955

大小:135.00 KB

页数:6页

时间:2019-08-04

JavaEE第11次_第1页
JavaEE第11次_第2页
JavaEE第11次_第3页
JavaEE第11次_第4页
JavaEE第11次_第5页
资源描述:

《JavaEE第11次》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、JavaEE企业级架构开发与技术案例教程实验报告实验名称演示EJB的消息驱动bean示例实验目的1.开发消息驱动bean的相关概念2.消息的传递模型3.Queue类型消息开发步骤一、实验目的1.开发消息驱动bean的相关概念2.消息的传递模型3.Queue类型消息开发步骤二、实验内容及结果(请将相应题目代码和结果截图写在相应题目下方)1.开发消息驱动bean的相关概念(1).java消息驱动bean属于Java消息服务(JavaMessageService,简称JMS)。(2)JMS是用于访问企业消息系统的开发商中心的API。企业消息系统可以协助应用软件通过网络进行

2、消息交互。(3)JMS的编程过程简单概括为:应用程序A-->(消息)-->JbossJMS-->(消息)-->应用程序B。应用程序A和应用程序B没有直接的代码关联,两者实现了解耦。消息传递系统的中心就是消息。消息驱动Bean(MDB)是设计用来专门处理基于消息请求的组件,它和无状态SessionBean一样也使用了实例池技术,容器可以使用一定数量的bean实例并发处理成百上千个JMS消息。正因为MDB具有处理大量并发消息的能力,所以非常适合应用在一些消息网关产品。如果一个业务执行的时间很长,而执行结果无需实时向用户反馈时,也很适合使用MDB。如订单成功后给用户发送一

3、封电子邮件或发送一条短信等。消息有下面几种类型,他们都是派生自Message接口。StreamMessage:一种主体中包含Java基本值流的消息。其填充和读取均按顺序进行。MapMessage:一种主体中包含一组名-值对的消息。(没有定义条目顺序)TextMessage:一种主体中包含Java字符串的消息(例如:XML消息)ObjectMessage:一种主体中包含序列化Java对象的消息。BytesMessage:一种主体中包含连续字节流的消息。1.消息的传递模型:JMS支持两种消息传递模型:点对点(point-to-point,简称PTP)和发布/订阅(pub

4、lish/subscribe,简称pub/sub)。二者有以下区别:1.PTP消息传递模型规定了一条消息只能传递给一个接收方。采用javax.jms.Queue表示。2.Pub/sub消息传递模型允许一条消息传递给多个接收方。采用javax.jms.Topic表示。注意:每种模型都通过扩展公用基类来实现。例如,javax.jms.Queue和javax.jms.Topic都扩展自javax.jms.Destination类。2.Queue类型消息开发步骤:Xml代码:java中发送消息的概括:(1).得到一个JNDI初始化上下文(Context)InitialCon

5、textctx=newInitialContext();(2).根据上下文查找一个连接工厂ConnectionFactory,改连接工厂是由JMS提供的,不需我们自己创建,每个厂商都为它绑定了一个全局JNDI,我们通过它的全局JNDI便获取它;QueueConnectionFactoryfactory=(QueueConnectionFactory)ctx.lookup("ConnectionFactory");(3).从连接工厂得到一个连接QueueConnection。QueueConnectionconn=factory.createQueueConnecti

6、on();(4).通过连接来建立一个会话(Session);QueueSessionsession=conn.createQueueSession(false,QueueSession.AUTO_ACKNOWLEDGE);这句代码意思是:建立不需要事务的并且能自动确立消息已接收的会话。(5).查找目标地址:Destinationdestination=(Destination)ctx.lookup("queue/ztfQueue");(6).根据会话以及目标地址来建立消息生产者MessageProducer(QueueSender和TopicPublisher都扩展

7、自MessageProducer接口):MessageProducerproducer=session.createProducer(destination);TextMessagemsg=session.createTextMessage("您好:胡晓亮,这是我的第一个消息驱动Bean");producer.send(msg);3.建立一个java项目,把jboss的client目录下的jar包全部buildPath到编译路径中。4.写消息的发送端Java代码:5.写消息的接收端采用MessageDrivenBean接收消息。当容器检测到bean守候的目标地址

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。