EJB3 事物
在ejb3中事物分为两种类型:容器管理的事物(CMT)、Bean管理的事物(BMT)
1.容器管理的事物(CTN)
是EJB默认的事物管理方式,即以对应的方法起始和结束来由EJB容器确定事务的始末边界,换言之就是方法开始事务开始,方法结束事务结束。
不需要使用注解和手动启动事物。
在该方式下,包含6中事物的传播方式。
Required(默认):如果调用方法时上下文中包含事物,则在原事务中运行;如果没有事务,则开启一个新事务,在其中运行。
Requires_New:若调用该方法时上下文中包含事物,则首先将原事务挂起,开启新事物运行,新事务结束,原来事务从挂起点继续执行;若没有,则开启一个新事务运行。
Supports:和 Required 属性的不同点是,在没有事务的环境中不会开启一个新事务;如果存在事务的话则加入其中运行,这点和 Reuqired 相同。
Not_Supported:调用该方法时上下文中存在事物,则事物挂起,方法不参与事物。若上下文中没有事物,不开启新事务,这点和 Supports 相同。
Mandatory:调用该方法的上下文必须包含事物,如果不包含事务则会抛出异常;该属性不会自动开启新的事务;
Never:用 Never 属性标注的方法或组件,不能在事务中运行。如果调用该方法或组件的客户端已经在事务中,则抛出异常。
@TransactionManagement(TransactionManagementType.CONTAINER)
@TransactionAttribute(TransactionAttributeType.REQUIRED)
在该方式中,当EJB的方法中产生runtimeexception时便会自动进行回滚。
2.Bean管理的事物(BMT)
在该方式中,事物是由Bean管理,即事物的开始和结束是由Bean对象中的代码所决定的,其事物的边界可以由人为的控制
EJB3 事物的更多相关文章
- EJB3 阶段总结+一个EJB3案例 (1)
经过一段时时间的学习,对EJB3的相关知识和jboss8的配置有了大概的了解. 网上对EJB的评论很多,基本都是负面的,都表示EJB太过于沉重,不容易维护.但通过这段时间的学习,私下认为,EJB3在某 ...
- POJO应用框架:Spring与EJB3.0的比较
英文原文地址:http://www.onjava.com/pub/a/onjava/2005/06/29/spring-ejb3.html中文地址:http://www.matrix.org.cn/r ...
- Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示
Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...
- MyBatis6:MyBatis集成Spring事物管理(下篇)
前言 前一篇文章<MyBatis5:MyBatis集成Spring事物管理(上篇)>复习了MyBatis的基本使用以及使用Spring管理MyBatis的事物的做法,本文的目的是在这个的基 ...
- Atomikos实现多数据源的事物管理
之前试过使用Spring动态切换数据库,通过继承AbstractRoutingDataSource重写determineCurrentLookupKey()方法,来决定使用那个数据库.在开启事务之前, ...
- 浅谈spring 声明式事物
此处主要讲讲事物的属性. 事物属性包含了五个方面: 1.传播行为 2.隔离规则 3.回滚规则 4.事物超时 5.是否只读 一.传播行为 事务的第一个方面是传播行为(propagation behavi ...
- 第6章 Spring的事物处理
一.简述事物处理 1.事物处理的基本概念 1)提交:所有操作步骤都被完整执行后,称该事物被提交 2)回滚:某步操作执行失败,所有操作都没被提交,则事物必须被回滚 2.事物处理的特性(ACID) 1)原 ...
- 解惑spring嵌套事物
工作中一直对spring中的事物管理都是最简单的配置 但是spring中的事物传播性配置 还有很多种,有时候经常疑惑service调用service的问题,今天的论坛上看到一篇写的非常详细的文字.记录 ...
- SQL Server中的事物
1.事务的四个属性 原子性Atomicity,一致性Consistency,隔离性Isolation,持久性Durability ,即ACID特性. 原子性:事务必须是一个完整工作的单元,要么全部执行 ...
随机推荐
- spark 写 hbase 数据库,遇到Will not attempt to authenticate using SASL (unknown error)
今日在windows上用spark写hbase的函数 saveAsHadoopDataset 写hbase数据库的时候,遇到Will not attempt to authenticate using ...
- HDU 1242 Rescue (BFS+优先队列)
题意:X代表卫兵,a代表终点,r代表起始点,.代表路,#代表墙,走过.要花费一秒,走过x要花费2秒,求从起点到终点的最少时间. 析:一看到样例就知道是BFS了吧,很明显是最短路径问题,不过又加了一个条 ...
- 20145234黄斐《java程序设计》第六周
教材学习内容总结 第十章:输入与输出 InputStream与OutputStream 流(Stream)是对「输入输出」的抽象,注意「输入输出」是相对程序而言的 InputStream与Output ...
- HDU1253 胜利大逃亡(BFS) 2016-07-24 13:41 67人阅读 评论(0) 收藏
胜利大逃亡 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示 ...
- C++中的浮点数运算的误差测试分析
C++中的浮点数运算的误差 项目中需要计算判定,采用的是float型,如: float a < yLing, 其中:a = 2.0, y则从1.0 + 0.2*n 当n = 4时,条件成立了? ...
- 【Cocos2d-Js实战教学(1)横版摇杆八方向移动】
本教程主要通过搭建一个横版摇杆八方向移动的实例,让大家如何用Cocos2dx-Js来做一款游戏,从基础了解Cocos2dx-Js的基本实现原理,从创建工程,到各个知识点的梳理. 教程分为上下两讲: 上 ...
- git生成Key操作保存到GITHUB中
https://blog.csdn.net/sinat_23880167/article/details/78502528 1. 在git中通过命令: $ ssh-keygen Generating ...
- CRT和EXCRT简单学习笔记
中国剩余定理CRT 中国剩余定理是要求我们解决这样的一类问题: \[\begin{cases}x\equiv a_1\pmod {b_1} \\x\equiv a_2 \pmod{b_2}\\...\ ...
- “全栈2019”Java多线程第二十三章:活锁(Livelock)详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- jzoj5878
tj:這道題可以想到排列組合 對於第一問,我們知道,左轉的次數比右轉次數多4,所以答案是c(n,n/2-2) 對於第二問,我們發現,不能出現下凹的情況,所以不能同時出現2個左拐,且路徑可以分為4段,且 ...