项目名:1ma1ma

jdbc.xml

<bean  id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" 
           p:driverClassName="${jdbc.driverClassName}"
           p:url="${jdbc.url}"
           p:username="${jdbc.username}"
           p:password="${jdbc.password}"
           p:maxActive="${jdbc.pool-size}"
           p:minEvictableIdleTimeMillis="600000" p:timeBetweenEvictionRunsMillis="900000"
           p:removeAbandoned="true" p:logAbandoned="true" p:removeAbandonedTimeout="120"
           p:maxWait="5000"
    />

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  
        <property name="dataSource">  
            <ref local="dataSource" />  
        </property>  
    </bean>  
    <tx:annotation-driven transaction-manager="transactionManager" />
    <context:component-scan base-package="com.yaoma.*">   
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" />   
    </context:component-scan>

servlet-context.xml

<context:component-scan base-package="com.yaoma.*" >   
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />   
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service" />    
    </context:component-scan>

@Transactional
    public int delete(String IMGroupID, String userid) throws Exception {
        //依照IMGroupID和userid更新相应的Groups表内容
        int is_return = Groups_Dao.IsDeleted_Groups(IMGroupID, userid, 0);
        if (is_return == 0) {
            throw new RuntimeException("is_return is 0;");
        }

//去环信上删除相应的数据
        String hx_return = HX_Service.delete_group(IMGroupID);
        if (hx_return == null) {
            throw new RuntimeException("hx_return is null");
        }
        return Integer.parseInt(hx_return);
    }

@Transactional注解标签

由于在执行中,所以使用RuntimeException进行异常抛出,类中不能使用try捕捉异常,直接throws Exception抛出异常

如执行时使用Exception抛出异常,则回滚无效

转载于:https://www.cnblogs.com/llguanli/p/6767259.html

Spring mvc注解方式使用事务回滚相关推荐

  1. Spring 使用注解方式进行事务管理

    2019独角兽企业重金招聘Python工程师标准>>> 大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注 ...

  2. Spring使用注解@Transactional事物手动回滚

    https://blog.csdn.net/weixin_41141219/article/details/80751258

  3. spring注解事务及事务回滚失败的原因

    背景 spring支持编程式事务管理和声明式事务管理两种方式. 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager.对于编程 ...

  4. java 事务回滚注解_Java Spring 事务回滚详解

    这篇文章主要介绍了java Spring事务回滚的相关资料,需要的朋友可以参考下 spring 事务回滚 1.遇到的问题 当我们一个方法里面有多个数据库保存操作的时候,中间的数据库操作发生的错误.伪代 ...

  5. 事务回滚什么意思 try_三问Spring事务:解决什么问题?如何解决?存在什么问题?...

    1. 解决什么问题 让我们先从事务说起,"什么是事务?我们为什么需要事务?".事务是一组无法被分割的操作,要么所有操作全部成功,要么全部失败.我们在开发中需要通过事务将一些操作组成 ...

  6. Spring事务回滚和异常类

    转载自 https://www.cnblogs.com/tianyuchen/p/6678084.html 1.异常的一些基本知识 异常的架构 异常的继承结构:Throwable为基类,Error和E ...

  7. Spring事务—方法调用事务回滚

    转自:https://blog.csdn.net/m0_38027656/article/details/84190949 写这篇文章的初衷呢就是最近遇到了一个spring事务的大坑.与其说是坑,还不 ...

  8. Spring 注解方式实现 事务管理

    2019独角兽企业重金招聘Python工程师标准>>> 使用步骤: 步骤一.在spring配置文件中引入<tx:>命名空间 <beans xmlns="h ...

  9. (转)使用Spring注解方式管理事务与传播行为详解

    http://blog.csdn.net/yerenyuan_pku/article/details/52885041 使用Spring注解方式管理事务 前面讲解了怎么使用@Transactional ...

最新文章

  1. 转载_最值得阅读学习的10个C语言开源项目代码
  2. Qt-Creator编译pthread多线程程序的方法
  3. 【Android工具】最新测试谷歌play耗电情况,各种品牌安装谷歌play方法,GooglePlay...
  4. 2019年第十届蓝桥杯 - 省赛 - C/C++大学A组 - D. 迷宫
  5. django 后台日期_Django中的日期和时间格式 DateTimeField
  6. 【C++grammar】继承与构造
  7. java 微软雅黑_网站能使用微软雅黑字体吗?是否会构成侵权?微软雅黑有版本吗? - 飞天奔月的java博客 - ITeye博客...
  8. portraiture2022插件安装使用教程
  9. java 时区处理_JAVA时区处理(转)
  10. 项目管理/思维技术实战专家陈永生
  11. C#也能做机器学习?基于.NET的AI智能应用市场还是一片“处女地”
  12. 研究型论文框架及阅读文献方法
  13. 使用Python对股票数据进行数据分析(二)-使用ta-lib库获取日线行情、5日均线、10日均线行情并显示
  14. 【MySQL】物化视图
  15. 全面落地,2014大数据应用案例TOP100
  16. hexo安装链接转拼音出现的问题
  17. Win11修改鼠标样式
  18. 电商软件性能测试,实战 | 电商业务的性能测试(一): 必备基础知识
  19. 做数据分析,要懂多少模型
  20. 2012年6月19日免费http代理大全 1

热门文章

  1. MobaXterm无法退格删除,出现^H
  2. docker 删除tag为none的docker镜像
  3. 计算机组成原理:I/O的三大特性
  4. 在千万级的数据库查询中,如何提高效率?
  5. Spring Boot自定义缓存注解
  6. “docker exec“ requires at least 2 arguments. See ‘docker exec --help‘.
  7. centos7 通过脚本查询每个应用使用的内存
  8. Dijkstra算法求最短路径(java)
  9. String类和StringBuffer类的区别
  10. JS重点语法及常用对象总结