Java事务处理全解析(二)—— 失败的案例

本文通过BankService示例探讨Java事务处理中失败的情况。分析指出,由于在不同的DAO对象中创建了独立的Connection,导致事务无法正常回滚,从而引发错误。文章建议在事务处理中统一使用一个Connection对象来确保事务的完整性。
摘要由CSDN通过智能技术生成

本系列上一篇文章中,我们讲到了Java事务处理的基本问题,并且讲到了Service层和DAO层,在本篇文章中,我们将以BankService为例学习一个事务处理失败的案例。

 

请通过以下方式下载github源代码:

git clone https://github.com/davenkin/java_transaction_workshop.git

 

BankService的功能为:某个用户有两个账户,分别为银行账户和保险账户,并且有各自的账户号,BankService的transfer方法从该用户的银行账户向保险账户转帐,两个DAO分别用于对两个账户表的存取操作。

 

定义一个BankService接口如下:

package davenkin;
                                             
public interface BankService {
    public void transfer(int fromId, int toId, int amount);
}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值