网站大量收购独家精品文档,联系QQ:2885784924

软构件与中间件技术Java EE:第3章 企业Bean.ppt

软构件与中间件技术Java EE:第3章 企业Bean.ppt

  1. 1、本文档共87页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.2 会话Bean 3.2.5 单身会话Bean 当单身会话bean的并发访问管理方式被定为容器管理时,还可以用@Lock元注释加上LockType描述来标示单身会话bean的业务方法和会话bean类。当用@Lock(READ)元注释标示某个方法时,表明方法可以被并发访问;当用@Lock(WRITE)元注释标示时,表明方法在被一个客户端访问时,其他客户端的访问被锁定。当用@Lock元注释标示会话bean类时,相当于对类中的所有方法标示@Lock元注释。 3.2 会话Bean 3.2.5 单身会话Bean 当单身会话bean的并发访问管理方式被定为bean管理时,所有的方法都允许同步并发访问。 有别于其他企业bean,单身会话bean实例一旦被初始化,将不会被销毁,这保证了一个实例的使用会贯穿一个应用程序的生命周期。 3.2 会话Bean 3.2.5 单身会话Bean 四、开发单身会话bean 下面的例子中设计了一个名为CounterBean的单身会话bean,能表现出一个页面被访问的次数。其Web前端包含有一个JavaServer Faces管理的名为Count的bean,由XHTML文档template.xhtml和template-client.xhtml使用,Count通过依赖注入获取CounterBean的引用。 3.2 会话Bean 3.2.5 单身会话Bean CounterBean类的代码程序清单3.8 import javax.ejb.Singleton; ? @Singleton public class CounterBean { private int hits = 1; ? // Increment and return the number of hits 3.2 会话Bean 3.2.5 单身会话Bean public int getHits() { return hits++; } } 3.2 会话Bean 3.2.5 单身会话Bean Web前端的Count类的代码 程序清单3.9 @EJB private CounterBean counterBean; 语句使用了依赖注入 hitCount = counterBean.getHits(); 语句访问了CounterBean类 3.2 会话Bean 3.2.5 单身会话Bean template-client.xhtml的代码中,通过一个EL表达式“#{count.hitCount}”访问了hitCount属性,将点击次数传递到页面。 程序清单3.10 ui:define name=title This page has been accessed #{count.hitCount} time(s). /ui:define 3.3 消息驱动Bean 3.3.1 什么是消息驱动Bean 一、消息驱动bean的概念 消息驱动bean(Message-Driven Bean)是允许Java EE应用异步地处理消息的企业bean,该类型的bean通常担当一个消息监听器的作用,消息监听器类似于事件监听器,但是只接收消息。消息可以由应用客户端、企业bean、Web组件、JMS应用程序等任何Java EE组件,甚至是不使用Java EE技术的系统传递,消息驱动bean能够处理JMS消息和其他类型的消息。 3.3 消息驱动Bean 3.3.1 什么是消息驱动Bean 消息驱动bean不同于会话bean之处在于应用客户端不访问消息驱动bean。消息驱动bean也不保留与特定客户端对话时的状态,在EJB容器中的所有消息驱动bean实例都是等效的,可以将其分配给任何一个消息,一个消息驱动bean实例可以处理来自多个客户端的消息。 消息驱动bean的实例的变量可能会保留类似于JMS API连接、开放式数据库连接、一个企业bean对象的引用等客户端消息状态。 3.3 消息驱动Bean 3.3.1 什么是消息驱动Bean 客户端组件不能定位消息驱动bean并访问其方法,而是通过发送消息给实现了消息监听器的消息驱动bean类的方式来与之沟通。 消息驱动bean是无状态的、异步的、相对短暂的、可事务化处理的。 会话bean通常可以同步发送和接收消息,但是不能实现异步处理,为了避免阻塞服务器资源,JMS消息不应该同步发送和接收,此时,就应该使用消息驱动bean异步地处理消息。 3.3 消息驱动Bean 3.3.1 什么是消息驱动Bean 二、消息驱动bean

文档评论(0)

学习让人进步 + 关注
实名认证
内容提供者

活到老,学到老!知识无价!

1亿VIP精品文档

相关文档