实体 Bean 的轻量级本地操作方式

WebSphere® Application Server 提供称为轻量级本地方式的特殊操作方式,它可以改进实体 Bean 方法的性能。可决定应用程序中以此方式运行的实体 Bean。

在轻量级本地方式下,容器可以使在该 Bean 的本地 Home 接口和本地业务接口上的每种方法之前和之后执行的处理流水化进行。当在应用程序中以本地方式调用实体 Bean 操作时,流水化处理可以改进性能。因为以轻量级本地方式运行时将跳过某些处理,所以只能在某些情况中使用此方式。

轻量级本地方式有点像 Enterprise JavaBeans (EJB) 3.0 规范中引入的无格式普通 Java™ 对象 (POJO) 实体模型。通过使用轻量级本地方式,不必将现有 EJB 2.x 应用程序代码转换为新的 POJO 模型,就可以得到 POJO 实体模型的某些性能优点。可同时对符合特定条件的容器管理的持久性 (CMP) 和 Bean 管理的持久性 (BMP) 实体类型应用轻量级本地方式。

注意: 实体 Bean 在 EJB 3.x 模块中不受支持。

何时使用轻量级本地方式

轻量级本地方式用于使用会话面模式创建、找到和调用的实体 Bean。在此模式下,将从无状态会话 Bean 或有状态会话 Bean 的方法中调用实体 Bean 本地 home 方法和本地业务方法。会话 Bean 方法可以远程方式或本地方式调用,并且为会话 Bean 访问的实体 Bean 提供安全控制和事务定界。

只能对满足下列条件的实体 Bean 应用轻量级本地方式:
  • 该 Bean 实现 EJB 本地接口。
  • 未对实体 Bean 本地 Home 接口方法和本地业务接口方法定义任何安全权限。
  • 未对本地 home 方法或本地业务方法定义任何运行方式安全性属性。
  • 调用 Bean 和被调用实体 Bean 的类由同一 Java 类装入器装入。
  • 实体 Bean 方法未调用特定于 WebSphere Application Server 的国际化服务或工作区服务。

第一个条件阻止 CMP 1.x Bean 支持轻量级本地方式,原因是 1.x Bean 不能有本地接口。

此外,轻量级本地方式仅对不需要启动全局事务的实体 Bean 方法提供其最完整的性能优点。如果确保实体 Bean 同时满足下列条件,那么会出现此情况:
  • 调用实体 Bean home 或业务方法时,全局事务已经生效。通常会通过调用会话 Bean 来启动此事务。
  • 实体 Bean 的本地业务接口方法和本地 home 方法仅使用下列事务属性:REQUIRED、SUPPORTS 或 MANDATORY。

如果在轻量级本地方式下运行的实体 Bean 方法必须启动全局事务,那么该 Bean 仍然正常工作,但只发挥了部分性能优点。

除了本地接口以外,还可对轻量级本地方式标记用于定义远程接口或 TimedObject 接口的实体 Bean。但是,仅当通过 Bean 的本地接口对其进行调用时,才会显示出性能优点。


指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cejb_lightweight
文件名:cejb_lightweight.html