`
sqiutz
  • 浏览: 72343 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Transaction Introduce

阅读更多

Transaction

  1. 什么是Transaction?所谓Transaction是指一系列不可分割的改动数据库的操作。在这个解释中,有三个关键词:一系列,不可分割以及改动。仅仅是一个改动数据库的操作是没有Transaction可言,只有"一系列"操作(一组SQL语句)才可能组成Transaction;"不可分割"就意味着一致性和完整性,要么这一系列操作全部commit,要么就全部rollback;如果一系列的操作只包含enquiry操作,那么这些操作也不是Transaction。
  2. 在J2EE中,Transaction主要有Bean-Managed Transaction和Container-Managed Transaction两大类。其中在Bean-Managed Transaction中还会分为JDBC Transaction和JTA Transaction两种。
  3. 什么是JDBC Transaction?它有怎样的特点?JDBC Transaction是指由Database本身去管理的事务。其最大的特点就是通过显示调用Connection接口的commit和rollback方法来完成事务的提交和回滚。事务结束的边界是commit或者rollback方法的调用,而开始的边界则不是那么明显了,它会开始于组成当前事务的所有statement中的第一个被执行的时候。
  4. 什么是JTA Transaction?它有怎样的特点呢?JTA Transaction是指由J2EE Transaction manager去管理的事务。其最大的特点是调用UserTransaction接口的begin,commit和rollback方法来完成事务范围的界定,事务的提交和回滚。JTA Transaction可以实现同一事务对应不同的数据库,但是它仍然无法实现事务的嵌套。
  5. 什么是Container-Managed Transaction?它又有怎样的特点呢?Container-Managed Transaction,顾名思义,就是由Container负责管理的Transaction,当然这样Transaction是出现在EJB的范畴中。Container-Managed Transaction最大的特点是不需要显式界定事务的边界,也不需要显式的提交或者回滚事务,这一切都由Container来替我们完成。我们需要做的就是设定在一个Bean中,哪些方法是跟事务相关的,同时设定它们的Transaction Attribute既可。
  6. Transaction的 Scope是相当重要的,特别是在一个Bean的方法中调用另外一个Bean的方法。为了便于说明问题,我们把这两个方法分别称为methodA和 methodB。当methodA调用methodB的时候,methodB在事务的层面上对调用者methodA有怎样的限制(methodB中是否存在事务)以及methodA如何在事务的层面上实现对methodB的调用(是否需要重新创建一个新的事务来处理methodB的调用)都需要通过Transaction Attribute来设定的。具体的Transaction Attribute有以下六种:Required,RequiresNew,Mandatory,NotSupported,Supports和Never。

WebSphere中出现Transaction问题导致服务器无法正常工作时,可以找到<profile_root>/translog目录,保留目录结构,清除目录下的log文件,然后重启Server。

分享到:
评论

相关推荐

    ARIES - A Transaction Recovery Method Supporting xxxx

    ARIES - A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging.pdf Algorithm for Recouery and Isolation Exploiting Semantics), which ...

    sap bte introduce

    ### SAP BTE(Business Transaction Events)介绍 #### 一、什么是业务交易事件(Business Transaction Events) 业务交易事件(BTE)是一种增强技术,最初为SAP财务会计(Financial Accounting, FI)组件开发。...

    数据库系统原理英文课件:ch16 Concurrency Control.ppt

    The impact of concurrency control on **Insert and Delete Operations** is covered, as these actions can introduce complexities in maintaining consistency when multiple transactions are involved. ...

    javaweb 期末复习

    public void setIntroduce(String introduce) { this.introduce = introduce; } public String getActiveCode() { return activeCode; } public void setActiveCode(String activeCode) { this.activeCode = ...

    Concurrency in Main-Memory Database Systems

    queries by running queries on a fresh, transaction-consistent snapshot. Second, we introduce tentative execution, a mechanism which allows long-running transactions to be efficiently executed side by ...

    Advanced ABAP Programming for SAP

    Typically, the authors (three SAP consultants) introduce a subject with an explanation and then present a short program that illustrates the concept in its simplest case. From there, they provide the...

    务英语口语900句

    例如,介绍产品的质量和特点时,可以使用“Let me introduce you to our latest product, which features advanced technology and unparalleled durability, making it ideal for your needs.”(让我向您介绍我们...

    计算机网络第六版答案

    Computer Networking: A Top-Down Approach, 6th Edition Solutions to Review Questions and Problems Version Date: May 2012 ...This document contains the solutions to review questions and problems for...

Global site tag (gtag.js) - Google Analytics