package com.tfy.itheima.service.impl;
import com.tfy.itheima.dao.impl.AccountDaoImpl;
import com.tfy.itheima.domain.Account;
import com.tfy.itheima.jdbc.util.DbcpUtil;
public class AccountServiceImpl {
public void transfer(String sourceAccount,String targetAccount,float money){
try{
DbcpUtil.startTransaction();
AccountDaoImpl dao=new AccountDaoImpl();
Account sAccount=dao.findAccount(sourceAccount);
Account tAccount=dao.findAccount(targetAccount);
sAccount.setMoney(sAccount.getMoney()-money);
tAccount.setMoney(tAccount.getMoney()+money);
dao.update(sAccount);
int i=1/0;
dao.update(tAccount);
}catch(Exception e){
e.printStackTrace();
DbcpUtil.rollback();
throw new RuntimeException(e);
}finally{
DbcpUtil.commit();
DbcpUtil.release();
}
}
}
import com.tfy.itheima.dao.impl.AccountDaoImpl;
import com.tfy.itheima.domain.Account;
import com.tfy.itheima.jdbc.util.DbcpUtil;
public class AccountServiceImpl {
public void transfer(String sourceAccount,String targetAccount,float money){
try{
DbcpUtil.startTransaction();
AccountDaoImpl dao=new AccountDaoImpl();
Account sAccount=dao.findAccount(sourceAccount);
Account tAccount=dao.findAccount(targetAccount);
sAccount.setMoney(sAccount.getMoney()-money);
tAccount.setMoney(tAccount.getMoney()+money);
dao.update(sAccount);
int i=1/0;
dao.update(tAccount);
}catch(Exception e){
e.printStackTrace();
DbcpUtil.rollback();
throw new RuntimeException(e);
}finally{
DbcpUtil.commit();
DbcpUtil.release();
}
}
}
Java转账服务实现
本文介绍了一个使用Java实现的转账服务,通过调用数据库操作来完成资金从一个账户到另一个账户的转移。包括事务管理、异常处理及资源释放。
236

被折叠的 条评论
为什么被折叠?



