全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JavaEE企业级架构开发与技术案例教程实验报告实验名称演示EJB的消息驱动bean示例实验目的1. 开发消息驱动bean的相关概念2. 消息的传递模型3. Queue类型消息开发步骤1、 实验目的1.开发消息驱动bean的相关概念2.消息的传递模型3.Queue类型消息开发步骤2、 实验内容及结果(请将相应题目代码和结果截图写在相应题目下方)1. 开发消息驱动bean的相关概念(1).java消息驱动bean属于Java消息服务(Java Message Service,简称JMS)。(2)JMS是用于访问企业消息系统的开发商中心的API。企业消息系统可以协助应用软件通过网络进行消息交互。(3)JMS的编程过程简单概括为:应用程序A-(消息)-Jboss JMS-(消息)-应用程序B。应用程序A和应用程序B没有直接的代码关联,两者实现了解耦。消息传递系统的中心就是消息。消息驱动Bean(MDB)是设计用来专门处理基于消息请求的组件,它和无状态Session Bean一样也使用了实例池技术,容器可以使用一定数量的bean实例并发处理成百上千个JMS消息。正因为MDB具有处理大量并发消息的能力,所以非常适合应用在一些消息网关产品。如果一个业务执行的时间很长,而执行结果无需实时向用户反馈时,也很适合使用MDB。如订单成功后给用户发送一封电子邮件或发送一条短信等。消息有下面几种类型,他们都是派生自Message接口。StreamMessage:一种主体中包含Java基本值流的消息。其填充和读取均按顺序进行。MapMessage:一种主体中包含一组名-值对的消息。(没有定义条目顺序)TextMessage:一种主体中包含Java字符串的消息(例如:XML消息)ObjectMessage:一种主体中包含序列化Java对象的消息。BytesMessage:一种主体中包含连续字节流的消息。2. 消息的传递模型:JMS支持两种消息传递模型:点对点(point-to-point,简称PTP)和发布/订阅(publish/subscribe,简称pub/sub)。二者有以下区别:1.PTP 消息传递模型规定了一条消息只能传递给一个接收方。采用javax.jms.Queue表示。2.Pub/sub 消息传递模型允许一条消息传递给多个接收方。采用javax.jms.Topic表示。注意:每种模型都通过扩展公用基类来实现。例如,javax.jms.Queue 和javax.jms.Topic都扩展自javax.jms.Destination 类。3. Queue类型消息开发步骤:Xml代码:java 中发送消息的概括:(1).得到一个JNDI初始化上下文(Context)InitialContext ctx = new InitialContext();(2).根据上下文查找一个连接工厂ConnectionFactory,改连接工厂是由JMS提供的,不需我们自己创建,每个厂商都为它绑定了一个全局JNDI,我们通过它的全局JNDI便获取它;QueueConnectionFactory factory = (QueueConnectionFactory)ctx.lookup(ConnectionFactory);(3).从连接工厂得到一个连接QueueConnection。QueueConnection conn = factory.createQueueConnection();(4).通过连接来建立一个会话(Session);QueueSession session = conn.createQueueSession(false,QueueSession.AUTO_ACKNOWLEDGE);这句代码意思是:建立不需要事务的并且能自动确立消息已接收的会话。(5).查找目标地址:Destination destination=(Destination)ctx.lookup(queue/ztfQueue);(6).根据会话以及目标地址来建立消息生产者MessageProducer(QueueSender和TopicPublisher都扩展自MessageProducer接口):MessageProducer producer = session.createProducer(destination);TextMessage msg = session.createTextMessage(您好:胡晓亮,这是我的第一个消息驱动Bean);producer.send(msg);3.建立一个java项目,把jboss的client目录下的jar包全部buildPath到编译路径中。4.写消息的发送端Java代码:5.写消息的接收端采用MessageDrivenBean接收消息。当容器检测到bean守候的目标地址有消息到达时,容器调用onMessage()方法,将消息作为参数传入MDB。MDB在onMessage()中决定如何处理改消息。你可以使用注解指定MDB监听哪一个目标地址(Destination)。当MDB部署时,容器将读取其中的配置信息。一个MDB通常要实现MessageListener接口,在接口定义了onMessage()方法。Bean通过它来处理收到的JMS消息。Java代码:6.打包部署:讲项目打成一个jar包,貌似netbC.jar,放在JBOSS的deploy目录下,启动jboss7.运行QueueSender.java 发送消息3、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026全球航空乘客服务市场现状深度解析及竞争格局与旅客体验优化分析
- 2026汽车维修行业技术培训体系市场研究与发展前景研究
- 物业设备设施维护保养制度
- 2026汽车零部件制造行业升级转型与产业链整合研究报告
- 2026中国香料香精制造业技术标准分析市场需求发展规划
- 2026中国钨矿资源安全保障体系构建与市场展望
- 腹泻的标准化诊断思路及粪便相关检查全面解读
- 2026中国涡流泵行业品牌传播与市场推广策略分析报告
- 2026汽车租赁行业商业模式市场运营投资前景发展分析
- 2026农业农业电商平台运营行业市场现状供需分析及投资评估规划分析研究报告
- 医疗器械经营质量管理规范现场检查原则培训试题及答案
- 智能交通系统在公共交通线路优化中的应用可行性研究报告
- 第1单元 运动的描述 章末复习(含单元检测卷)(解析版)-2025~2026学年高一上学期物理讲与练(人教版2019必修第一册)
- 电厂热控安装培训课件
- 医院食品安全培训
- 黄金租赁业务合同范本
- 醉酒滋事应急预案
- 农村住房安全教育培训课件
- 警用无人机操作与应用培训大纲
- 粮库防汛安全培训课件
- 2025年人教版三年级下册数学期末复习每日一练(21天)
评论
0/150
提交评论