博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis 事务管理
阅读量:5961 次
发布时间:2019-06-19

本文共 1116 字,大约阅读时间需要 3 分钟。

hot3.png

编程式事务配置 

@Transactional方式

直接在service方法加入注释即可 

@Transactional    public int txUpdateUsersWhenException() {         Merchant merchant=new Merchant();        merchant.setId(1);        merchant.setEnName("333");        int affectedCount = super.update(merchant);        System.out.println(affectedCount );        int i = 1 / 0; // 抛出运行时异常,事务回滚        return 0;    }

TransactionTemplate方式

@Autowired(required = false)TransactionTemplate txTemplate;public int txUpdateUsersWhenExceptionViaTxTemplate() {	int retVal = txTemplate.execute(new TransactionCallback
() { @Override public Integer doInTransaction(TransactionStatus status) { // 事务操作 User user = new User(9, "Before exception"); int affectedCount = mapper.updateUser(user); // 因后面的异常而回滚 User user2 = new User(10, "After exception"); int i = 1 / 0; // 抛出运行时异常并回滚 int affectedCount2 = mapper.updateUser(user2); // 未执行 if (affectedCount == 1 && affectedCount2 == 1) { return 1; } return 0; } }); return retVal;}

 

转载于:https://my.oschina.net/yejunxi/blog/736604

你可能感兴趣的文章
ssh-keygen的使用方法
查看>>
mysql 日期和时间格式转换实现语句
查看>>
Python装饰器
查看>>
php7.2 编译安装
查看>>
ios mjextension 字典数组转模型数组并转化为jsonString
查看>>
对 Windows 窗体控件进行线程安全调用
查看>>
iOS tableView分割线从头开始
查看>>
润乾集算报表的层次数据集理解
查看>>
小蚂蚁学习数据结构(14)——二叉树的创建
查看>>
【CXF】- Spring 整合 webservice CXF
查看>>
XDCTF成长记录
查看>>
registered the JDBC driver [com.mysql.jdbc.Driver]
查看>>
如何有效删除Redis中比较大的Hash Key
查看>>
Linux系统中的文本处理工具
查看>>
IDE---Python IDE之Eric5在window下的安装
查看>>
python---LineReceiver实现记录服务器
查看>>
Mybatis调用Oracle中的存储过程和function
查看>>
telnet :No route to host
查看>>
基本安装lnmp环境
查看>>
yum源资料汇总
查看>>