原生jdbc使用spring事物

我们在使用 mybatis结合spring事物都是按照标准的模板进行处理,这让我们只是知其然而不知其所以然。这让我情何以堪,所以必须阅读源码并加上调试,搞懂其处理机制

在使用mybatis-spring时,mybatis-spring 官网的入门教程中有如下说明:

只需要往spring容器中注入该bean就完成了mybatis与spring事物的关联。具体如何关联的,还是得阅读源码才能知晓。这个我们放到下次再说。

在阅读mybatis-spring的源码时我看到了

TransactionAwareDataSourceProxy.java 这个类,在网上搜了一下,并阅读spring的官方文档,大致是说,该类是普通数据源的代理类,可以让普通数据源感知到spring的事物上下文。刚开始并不是很理解这句话是什么意思。可以这样理解,如果我们想使用spring的事物,但不使用spring的jdbcTemplate,就使用的原生的jdbc代码,那么我们可以使用TransactionAwareDataSourceProxy将原生jdbc与spring事物关联起来。具体代码如下:
/**
 * 以上所有都是可以调用DataSourceUtils化简代码,而JdbcTemplate又是调用DataSourceUtils的。所以在 Spring文档中要求尽量首先使用JdbcTemplate,其次是用DataSourceUtils来获取和释放连接。至于 TransactionAwareDataSourceProxy,那是下策的下策。不过可以将Sprin
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值