zoukankan      html  css  js  c++  java
  • 编程式事务和声明式事务

    编程式事务需要你在代码中直接加入处理事务的逻辑,可能需要在代码中显式调用beginTransaction()、commit()、 rollback()等事务管理相关的方法,如在执行a方法时候需要事务处理,你需要在a方法开始时候开启事务,处理完后。在方法结束时候,关闭事务.

    声明式的事务的做法是在a方法外围添加注解或者直接在配置文件中定义,a方法需要事务处理,在spring中会通过配置文件在a方法前后拦截,并添加事务.

    声明式事务:
    在配置文件中将事务配置好,通过bean的形式,调用spring的事务。然后在程序中不需要太多的事务管理代码,比如事务commit,backroll等
    程序式事务:
    就是在程序中获得spring的事务,然后通过此事务管理对象来操作事务,比如事务提交,回滚等,也就是说程序中需要通过代码的形式来管理事务。

    为什么要有事务管理?
    事务都是为了保证数据的一致和完整,保证整个操作的原子性。不论是spring事务还是×××事务,都一样。
    银行扣款流程的例子就不举了。
    一般什么时候用?
    简单的一句select就用不到事务,当然,如果你的这个select要记录日志,日志记录出错不让select,那就又是一个事务了。
    还有一些,比如,上传文件。文件保存在操作系统,相关信息保存在数据库,要么两个保存都成功,要么都失败,这么也是一个事务了。

  • 相关阅读:
    mode
    文件操作
    深浅拷贝
    基础数据类型补充
    再谈编码 decode和encode
    Python练习题 015:一颗自由落地的球
    Python练习题 014:完数
    Python练习题 013:求解a+aa+aaa……
    Python练习题 012:字符统计
    Python练习题 011:成绩打分
  • 原文地址:https://www.cnblogs.com/mrxiaohe/p/5610664.html
Copyright © 2011-2022 走看看