第九章EJB编程报告.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章EJB编程报告

BMP实体Bean Bean-Managed Persistence(自管理的持久性) 优点: 开发者有完全的控制 无需复杂的提供商支持 缺点: 编码复杂 在改变时需要重新编码和部署 影响可移植性 会话Bean与实体Bean 会话bean 表示一个业务过程 每一客户一个实例 Short-lived:与客户生命同步 暂态的 服务器崩溃后丢失 可以是事务性的 实体bean 表示业务数据 在多个客户间共享实例 Long-lived:与数据库中数据同步 持久的 服务器崩溃后可重构 总是事务性的 内容 EJB—J2EE的基石 EJB的容器和服务器 EJB的三个关键构件 EJB的分类 会话bean 实体bean 消息驱动Bean 回顾 什么是JMS JMS 是一种与厂商无关的 API,用来访问消息收发系统。 它类似于 JDBC (Java Database Connectivity):这里,JDBC 是可以用来访问许多不同关系数据库的 API,而 JMS 则提供同样与厂商无关的访问方法,以访问消息收发服务。 许多厂商目前都支持 JMS,包括 IBM 的 MQSeries、BEA 的 Weblogic JMS service 和 Progress 的 SonicMQ,这只是几个例子。 什么是消息 消息是软件组件或应用之间的一种通信方法。消息实现了松散耦合的分布式通信。组件发送消息到目的,消息接收者从该目的提取消息。但是,消息的发送和接收却不是同时进行的。实际上,发送者不必去了解接收者,同样接收者也不必了解发送者;它们只需要知道消息格式和消息目的。因此,消息不同于像远程方法调用(RMI)这种紧密耦合的通信方法,RMI要求知道远程应用的方法。 消息驱动Bean 消息驱动Bean 被设计用于使用异步的JMS(Java Message Service)消息,当JMS 消息到来时,容器调用消息驱动Bean 进行处理。 EJB2.0 规范中明确指出:使用消息驱动Bean 模型的目的是降低开发一个在功能上与JMS 客户机相似的企业级Bean 的难度,这个企业级Bean能被异步调用以处理收到的JMS消息。 在部署了一个消息驱动驱动Bean 后,它就被指派在一个虚拟通道上监听特定主题(Topic)或队列(Queue)中的消息。JMS 客户机发送的任何消息(该消息必须符合JMS 规范)都将由消息路由器转发给某个虚拟通道上的消息驱动Bean。当消息驱动Bean 接收到这条消息时,EJB 容器将会从某个实例池中选择该Bean 类的一个实例来处理该消息。当bean 实例调用其onMessage()方法时,它将会接收到这条消息,并能够以任何它认为合适的方式来处理这条消息。 消息驱动Bean 消息驱动Bean 也是一种完备的企业级Bean,但它不是RPC 组件,因此没有商业接口或home 接口,也没有供EJB 客户机调用的业务方法。此外消息驱动Bean 在很大程度上类似于无状态会话Bean,这两种Bean 在两次请求之间都不保持任何状态;但它们都可以有实例变量,这些变量在Bean 实例的整个生存期内均保持。 消息驱动Bean MDB示例 消息驱动Bean 测试Servlet /* * Created on 2004-7-2 * * To change the template for this generated file go to * Window - Preferences - Java - Code Generation - Code and Comments */ package com.ejbstudy; import javax.ejb.MessageDrivenBean; import javax.jms.MessageListener; import javax.jms.TextMessage; /** * @ejb.bean name=HelloMD * acknowledge-mode=Auto-acknowledge * destination-type=javax.jms.Topic * subscription-durability=NonDurable * transaction-type=Bean * *-- * This is needed for JOnAS. * If you are not using JOnAS you can safely remove the tags below. * @jonas.bean ejb-name=HelloMD * jndi-name=HelloMDBean * *-- **/ publi

文档评论(0)

ee88870 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档