编程语言
首页 > 编程语言> > Spring事务(2)------事务控制方式(2)编程式事务

Spring事务(2)------事务控制方式(2)编程式事务

作者:互联网

编程式事务

环境说明

<bean id="accountService" class="com.itheima.service.impl.AccountServiceImpl">
    <property name="accountDao" ref="accountDao"/>
    <property name="dataSource" ref="dataSource"/>
</bean>
//在applicationContext.xml里面注入
private AccountDao accountDao;
public void setAccountDao(AccountDao accountDao) {
   this.accountDao = accountDao;
}
//注入这个数据源
private DataSource dataSource;
public void setDataSource(DataSource dataSource) {
    this.dataSource = dataSource;
}
public void transfer(String outName, String inName, Double money) {
    //开启事务,创建事务管理器
    PlatformTransactionManager ptm = new DataSourceTransactionManager();
    //为事务管理器设置与数据层相同的数据源
dstm.setDataSource(dataSource);
    //事务定义
    TransactionDefinition td = new DefaultTransactionDefinition();
    //事务状态
    TransactionStatus ts = ptm.getTransaction(td);

    accountDao.inMoney(outName,money);
    int i = 1/0;//模拟业务层事务过程中出现错误
    accountDao.outMoney(inName,money);

    //提交事务
    ptm.commit(ts);
}

aop改造编程式事务(AOP控制事务)

标签:xml,事务,accountDao,Spring,ptm,dataSource,------,public
来源: https://blog.csdn.net/yyuggjggg/article/details/120742333