ejb中的本地接口.docVIP

  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中的本地接口 用户名: 密码: 登录 注册 知识百度收集、整理各种java、linux、嵌入式相关知识资料!!! 主页博客相册|个人档案 |好友 |i贴吧 查看文章 ejb中的 本地接口和本地home接口,远程接口和远程home接口2008-09-03 10:06这是个新的接口可以使你更有效地访问EJB。学习如何运用它们,以及何时运用它们。 by Rudy Dahbura 当前的EJB 2.0规范有新的接口功能,这在原先的EJB 1.1中是没有的。学习运用这些新的功能,它们可以使你更容易地、更有效地访问EJB。 缺点是什么呢?你将牺牲位置的独立性,但有时侯,这种代价是值得的。了解何时、如何运用新的功能对编写设计良好的EJB应用程序是至关重要的。 EJB 1.1规范给EJB客户端提供了一个remote interface和一个remote home interface与EJB实例交互,得到位置的透明度。以类似的形式,EJB 2.0规范现在给EJB客户端提供了一个local interface和一个local home interface来与共享同一个JVM的EJB实例交互。 EJB remote interface(javax.ejb.EJBObject)和remote home interface(javax.ejb.EJBHome)在本质上是Java RMI接口。远程客户端运用接口和与Java RMI-IIOP兼容的参数与EJBs通讯。参数和方法的结果值在同一个容器中传递,或者跨网络传递到远程容器。 这种编程模式给EJB客户端提供了一种访问EJB组件的方法,就好像这些组件是本地的一样。然后,容器就可以透明地处理网络通讯和执行其它功能。这种方法很适合粗粒度的(coarse-grained)方法调用,其中客户端和EJBs之间的客户端通讯保持到最小限度。 相反,EJB local interface(javax.ejb.EJBLocalObject)和local home interface(javax.ejb.EJBLocalHome)不是Java RMI接口,它们是EJB 2.0的新功能。本地客户端——如其它EJBs,运用相同JVM中传递的参数直接与EJBs通讯。这种技术消除了网络潜在的问题、参数复制的问题以及需要与Java RMI-IIOP兼容的问题。也意味着,EJB客户端可以运用一个更轻量级的编程模式来访问服务。该方法很适合细粒度的(fine-grained)方法调用,因为作为EJB实例的位于同一个JVM中的EJB客户端可以用本地接口来避免不必要的费用。 引进本地客户端产生的另一个显著的变化就是类型的转换。所有的EJB实例在运用前必须转换到它们恰当的接口类型,所以,有时侯,在运用远程客户端时,要保证Java RMI-IIOP的兼容性,你必须在转换EJB实例前运用java.rmi.PortableRemoteObject.narrow()来缩小(narrow)它。 但本地客户端可以直接把EJB实例转换成local home interface类型,如下面的代码片段: InitialContext initCtx = new InitialContext(); ExampleLocalHome exampleLocalHome = (ExampleLocalHome)initCtx.lookup(java:comp/ env/ejb/Example); 从local home创建了EJB实例: ExampleLocal exampleLocal = exampleLocalHome.create(); 也许EJB 2.0的最有趣、最容易被忽视的一个方面就是session和entity beans可以同时运用远程和本地接口,这就给了你很大的灵活性。运用两种接口给了潜在的bean客户端最大程度的自由,不管它们是不是在一起的。 session和entity元素描述了session和entity bean的部署属性。EJB 1.1和EJB 2.0规范定义了两个元素,home和remote。(以前的规范需要两个元素,但它们在2.0版中是可选的)。它们分别包含EJB remote home interface和remote interface的完全资格类名。 类似地,EJB 2.0规范定义了两个附加的元素,local-home和local。正如你预料的,它们包含EJB local home interface和local interface的完全资格类名。下面的代码显示了如何运用这些新元素: ejb-jar enterprise-beans session

文档评论(0)

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

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

1亿VIP精品文档

相关文档