java事务什么时候回滚_【java】事务的回滚

三层框架:

1:servlet层

2:service层

3:dao层

a:实体类domain

b:工具类utils

b:TestTransaction事务与回滚

package com.zcib.utils;

import java.sql.SQLException;

public class TestTransaction {//这里不能直接抛异常,要回滚

public static void main(String []args) {

String sql1="update bankaccount set account=account-100 where id=2";//转账功能

String sql2="update bankaccount set account=account+100 where id=1";

try{

JDBCUtils.beginTranscation();//开启事务

JDBCUtils.update(sql1);

int i=4;

if(i%2==0){

throw new RuntimeException("D人为抛的异常!");

}

JDBCUtils.update(sql2);

JDBCUtils.commitTranscation();//提交事务

}//catch(SQLException | ClassNotFoundException e){

catch (Exception e) {//人为添加异常使用Exception接收处理,软件工程

//完成,可回滚

try {

JDBCUtils.rollbackTranscation(); //回滚事务

} catch (SQLException e1) {

throw new RuntimeException(e);

}

}

}

}

标签:account,JDBCUtils,java,String,回滚,update,SQLException,事务

来源: https://blog.csdn.net/qq_38304672/article/details/89853606

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值