1. 开启事务
conn = DataSourceUtils.getConnection(JDBCUtils4.getDataSource());//从datasource中获取连接
conn.setAutoCommit(false);//开启事务
2. 提交事务
conn.commit();
3. 回滚事务
conn.rollback();
// 业务层:
public class XxxService{
public void 业务方法(){
//开启事务
try{
conn = DataSourceUtils.getConnection(JDBCUtils4.getDataSource());//从datasource中获取连接
conn.setAutoCommit(false);//开启事务
//调用dao + 业务逻辑
...
//成功-->提交事务
conn.commit();
}catch(Exception e){
//失败-->回滚事务
conn.rollback();
e.printStatckTrace();
throw new RuntimeException(e);
}finally{
DataSourceUtils.releaseConnection(conn,JDBCUtils4.getDataSource());//归还连接
}
}
}
public class CardService {
@Override
public void transfer(String from, String to, double money) {