首页 > 其他 > 详细

事务的使用

时间:2020-07-03 10:16:24      阅读:62      评论:0      收藏:0      [点我收藏+]

@Transactional

1.在接口Service增加 @Transactional注解

2.该接口是public 而且抛出了异常

public void testTransction(Vo vo) throws Exception;

 

3.在接口实现类抛出 RuntimeException 异常

   @Override
    public void testTransction(Bo bo) throws Exception {
//修改开始和下一步的信息 dao.updateByPrimaryKeySelective(bo); throw new RuntimeException("运行期例外"); }

 

声明式事务

    @Override
    public void editTask(DbTaskConfigSumVo dbTaskConfigSumVo) throws Exception {
    TransactionStatus status = transactionManager.getTransaction(new DefaultTransactionDefinition());

    try{   
        //具体代码逻辑
        transactionManager.commit(status);
        } catch (Exception e){
            // 捕获异常时 事务回滚(避免先删除了数据在后续的操作中报错使得新增失败,而数据又被删了)
            transactionManager.rollback(status);
            LOG.error(e);
            throw e;
    }    

 

事务的使用

原文:https://www.cnblogs.com/linhongwenBlog/p/13225593.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!