第一章:编程式事务管理(详解)

1. 说明:Spring为了简化事务管理的代码:提供了模板类 TransactionTemplate,所以手动编程的方式来管理事务,只需要使用该模板类即可!!
2. 手动编程方式的具体步骤如下:

  1. 步骤一:配置一个事务管理器,Spring使用PlatformTransactionManager接口来管理事务,所以咱们需要使用到他的实现类!!<!-- 配置事务管理器 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"/></bean>2. 步骤二:配置事务管理的模板<!-- 配置事务管理的模板 --><bean id="transactionTemplate" class="org.springframework.transaction.support.TransactionTemplate"><property name="transactionManager" ref="transactionManager"/></bean>3. 步骤三:在需要进行事务管理的类中,注入事务管理的模板<bean id="accountService" class="com.itheima.demo1.AccountServiceImpl"><property name="accountDao" ref="accountDao"/><property name="transactionTemplate" ref="transactionTemplate"/></bean>

4. 步骤四:在业务层使用模板管理事务:

// 注入事务模板对象private TransactionTemplate transactionTemplate;public void setTransactionTemplate(TransactionTemplate transactionTemplate) {this.transactionTemplate = transactionTemplate;}public void pay(final String out, final String in, final double money) {transactionTemplate.execute(new TransactionCallbackWithoutResult() {protected void doInTransactionWithoutResult(TransactionStatus status) {// 扣钱accountDao.outMoney(out, money);int a = 10/0;// 加钱accountDao.inMoney(in, money);}});}

第二章:声明式事务管理(重点)

声明式事务管理又分成两种方式

* 基于AspectJ的XML方式(重点掌握)

* 基于AspectJ的注解方式(重点掌握)

  1. 事务管理之基于AspectJ的XML方式(重点掌握)

    1. 使用

准备转账环境:

***业务层:

***AccountService

***AccountServiceImpl

***持久层:

***AccountDao

***AccountDaoImpl

***spring配置:

***单元测试代码:

***配置事务管理的AOP

***平台事务管理器:DataSourceTransactionManager

***事务通知:<tx:advice id=”” transaction-manager=””/>

***AOP配置:
       <aop:config>
              <aop:advisor advice-ref=”” pointcut=””/>
       </aop:config>

编程式事务管理(详解)相关推荐

  1. Spring事务管理详解_基本原理_事务管理方式

    Spring事务管理详解_基本原理_事务管理方式 1. 事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,使用JDBC的事务管理机制,就是利用java.sql.Connection对象 ...

  2. Spring事务管理详解

    什么是事务 事务是逻辑上的一组操作,要么都执行,要么都不执行. 需要注意的是:事务能否生效数据库引擎是否支持事务是关键.比如常用的 MySQL 数据库默认使用支持事务的 innodb引擎.但是,如果把 ...

  3. 关于事务管理的理解和Spring事务管理详解

    转载于:http://www.mamicode.com/info-detail-1248286.html 1 初步理解 理解事务之前,先讲一个你日常生活中最常干的事:取钱. 比如你去ATM机取1000 ...

  4. Spring中的事务管理详解

    在这里主要介绍Spring对事务管理的一些理论知识,实战方面参考上一篇博文: http://www.cnblogs.com/longshiyVip/p/5061547.html 1. 事务简介: 事务 ...

  5. 全面分析 Spring 的编程式事务管理及声明式事务管理(转)

    摘要 Spring 的事务管理是 Spring 框架中一个比较重要的知识点,该知识点本身并不复杂,只是由于其比较灵活,导致初学者很难把握.本教程从基础知识开始,详细分析了 Spring 事务管理的使用 ...

  6. 全面分析 Spring 的编程式事务管理及声明式事务管理--转

    开始之前 关于本教程 本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务.通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之. 先决条件 本 ...

  7. spring事务管理器的作用_【面试必问】Spring中的事务管理详解

    在这里主要介绍Spring对事务管理的一些理论知识,实战方面参考上一篇博文: http://www.cnblogs.com/longshiyVip/p/5061547.html 1. 事务简介: 事务 ...

  8. Spring中两种编程式事务管理

    Spring中两种编程式事务管理 在代码中显示调用beginTransaction,commit,rollback等与事务处理相关的方法,这就是编程式事务管理,当只有少数事务操作时,编程式事务管理才比 ...

  9. springmvc事务管理详解

    spring可以支持编程式事务和声明式事务. Spring使用事务管理器,每个不同平台的事务管理器都实现了接口:PlatformTransactionManager 此接口是事务管理的核心,提供了三个 ...

最新文章

  1. angular.forEach
  2. java反编器中文版,java反编译软件下载
  3. 二叉查找树(一)之 C语言的实现
  4. S5P4418/S5P6818核心板EMMC已由原来的4.5版本升级到5.1版本
  5. 【腾讯Bugly干货分享】那些年,我们一起写过的“单例模式”
  6. 中航工业集团金网络(北京)电子商务有限公司副总经理刘正珩:航空“智”造的供应链支撑平台...
  7. 13张PPT带你了解主动式消息队列处理集群
  8. Linux下编译运行Go程序
  9. docker-compose部署EFKL,存储,过滤laravel日志文件
  10. 昆仑通态通用版找不到驱动_昆仑通态无法连接1200
  11. Unity 清理注册表和临时文件
  12. 曾辉机器人_真棒!全球青少年人工智能大赛高中组冠、亚、季军都是安康娃!...
  13. [Python] 调用接口自动翻译单词,并存入文件
  14. linux 蓝牙 iphone,Linux On iPhone 7 现在可运行 Wayland
  15. 兄弟单词C语言,brother是什么意思
  16. 基于R语言混合效应模型(mixed model)案例研究
  17. win10 中使用bat脚本关机,重启 代码
  18. Laxcus大数据管理系统单机集群版
  19. 《左耳听风》-ARTS-打卡记录-第十四周
  20. 奔跑吧!Android虚拟机!Genymotion的安装和配置

热门文章

  1. SSM项目上传云服务器
  2. 平安大视野解读主动健康:以运动改变生命轨迹,以名医权益为健康保驾护航
  3. #千锋逆战班,接口回调#
  4. 谁懂这篇文,玩游戏还会卡顿?
  5. 华为手机发布鸿蒙系统,华为发布鸿蒙系统,默认的纯净模式实则还是资本的剥削?...
  6. 美化加载失败的图片(Stying broken images)
  7. oracle ltrim函数作用,oracle ltrim函数的用法
  8. 怎么退出HTML勿扰模式,iphone勿扰模式原来还能这么用,你OUT了吗
  9. java里相乘取两位小数_Java保留两位小数的几种做法
  10. 修改tomcat部署的web项目浏览器图标显示