利用J2EE Connector Architecture(5)

    作者:课课家教育更新于: 2016-01-29 18:41:07

    大神带你学编程,欢迎选课

      EJB 容器

      EJB 容器提供对全局事务的完整事务支持,包括容器管理的事务 (CMT) 和 Bean 管理的事务 (BMT)。会话 Bean 和消息驱动的 Bean 可以使用任一种类型。实体 Bean 仅限于使用 CMT。使用 BMT 的 Bean 负责事务划分并且必须使用 UserTransaction 接口来开始和结束事务。CMT 是首选的机制,因为它把事务控制委托给应用程序服务器,使应用程序开发人员能够专注于开发业务逻辑,同时仍可以根据部署决定应用程序的事务特性。CMT 的事务控制的关键是 EJB 事务属性,下面将讨论该属性。

      事务属性

      事务属性在 EJB 部署描述符(ejb-jar.xml 文件)中设置,事务属性是控制属性,在控制情形下当调用 Bean 方法时启动全局事务。此事务属性显示在“container-transaction”部分,并使用“trans-attribute”标记指定。例如,以下 XML 定义 CTGTesterCCI Bean 上的远程 execute() 方法具有“Required”事务属性:

      CTGTesterCCI

      Remote

      execute

      Required

       显示了如何使用 IBM Rational® application Developer 中的 EJB 部署描述符编辑器定义这些设置的情况。

       Rational Application Developer 中的事务属性

    利用J2EE Connector Architecture(5)_java敏捷开发_java网络开发_课课家

      事务属性的可能值及其描述在表 1 中列出:

      表 1. EJB 事务属性

      事务属性描述

      NotSupportedBean 方法不在事务的上下文中执行。

      RequiredBean 方法将在事务的上下文中执行。

      RequiresNewBean 方法将在新事务的上下文中执行。

      SupportsBean 方法可以在事务上下文中执行,也可以不在事务上下文中执行。

      MandatoryBean 方法必须在 EJB 客户机的事务上下文中执行。

      NeverBean 不会在事务上下文中调用。

课课家教育

未登录