项目名: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抛出异常,则回滚无效

Spring mvc注解方式使用事务回滚的更多相关文章

  1. Spring异常抛出触发事务回滚

    Spring.EJB的声明式事务默认情况下都是在抛出unchecked exception后才会触发事务的回滚 /** * 如果在spring事务配置中不为切入点(如这里的切入点可以定义成test*) ...

  2. (转)spring异常抛出触发事务回滚策略

    背景:在面试时候问到事务方法在调用过程中出现异常,是否会传递的问题,平时接触的比较少,有些懵逼. spring异常抛出触发事务回滚策略 Spring.EJB的声明式事务默认情况下都是在抛出unchec ...

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

    转载:http://www.cnblogs.com/younggun/archive/2013/07/16/3193800.html 使用步骤: 步骤一.在spring配置文件中引入<tx:&g ...

  4. spring boot 使用 mybatis 开启事务回滚 的总结

    1.前言 以前没有使用mybatis,可以关闭自动提交,然后做sql操作,对操作进行catch捕获异常, 如果没有异常则commit 提交 ,有异常则 rollback 回滚,新增的数据则删除 ,修改 ...

  5. junit4测试 Spring MVC注解方式

    本人使用的为junit4进行测试 spring-servlet.xml中使用的为注解扫描的方式 <?xml version="1.0" encoding="UTF- ...

  6. [转]spring mvc注解方式实现向导式跳转页面

    由于项目需要用到向导式的跳转页面效果,本项目又是用spring mvc实现的,刚开始想到用spring 的webflow,不过webflow太过笨重,对于我们不是很复杂的跳转来说好像有种“杀鸡焉用牛刀 ...

  7. 事务之二:spring事务(事务管理方式,事务5隔离级别,7个事务传播行为,spring事务回滚条件)

    事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性. spring支持编程式事务管理和声明式事务管理两种方式. 编程式事务管理使用TransactionTemplate或 ...

  8. Spring事务回滚和异常类

    1.异常的一些基本知识 异常的架构 异常的继承结构:Throwable为基类,Error和Exception继承Throwable.Error和RuntimeException及其子类成为未检查异常( ...

  9. 浅谈Spring中的事务回滚

        使用Spring管理事务过程中,碰到过一些坑,因此也稍微总结一下,方便后续查阅. 1.代码中事务控制的3种方式 编程式事务:就是直接在代码里手动开启事务,手动提交,手动回滚.优点就是可以灵活控 ...

随机推荐

  1. 【javaw.exe 两个】启动了两个javaw.exe 相关

    大家开发 肯定见过 两条并存的现象吧! 关闭方式1: 在任务管理器中,挑选 内存占用较小的 那个  关闭即可!! 关闭方式2: 1.查找对应的端口占用的进程:netstat  -aon|findstr ...

  2. Androidclient与服务端交互之登陆演示样例

    今天了解了一下androidclient与服务端是如何交互的,发现事实上跟web有点类似吧,然后网上找了大神的登陆演示样例.是基于IntentService的 1.后台使用简单的servlet,支持G ...

  3. [Android 源码] Android源码下载

    Android源码下载 为了能够顺利的下载Android的源码,同时也为了避免在网络上再次搜寻如何下载源码的麻烦,我把下载过程记录在这篇文档中. 官网中也有详细的介绍: http://source.a ...

  4. iOS: 如何调节UITabbarItem的图片和文字位置

    转载自:http://blog.csdn.net/kevinwlc/article/details/21467499/ 在ios7中,方法setFinishedSelectedImage:withFi ...

  5. 会话追踪(session tracking)

    HTTP是一种无连接的协议,如果一个客户端只是单纯地请求一个文件(HTML或GIF),服务器端可以响应给客户端,并不需要知道一连串的请求是否来自于相同的客户端,而且也不需要担心客户端是否处在连接状态. ...

  6. Android -- 再来一发Intent

    之前写过一篇Intent的博客,主要说了一下隐式意图. 传送门:<Android -- Intent> Intent对象构成 Component name.Action.Data.Cate ...

  7. 缓存jQuery对象来提高性能

    jQuery使元素的选择变得异常简单,这也是它快速流行起来的一大原因,如果你看刚刚开始使用jQuery朋友写的代码时,会发现很多数人写的代码都在滥用jQuery选择器.   如果你发现同一元素被查找多 ...

  8. 搭建keepalived遇到的问题

    搭建keepalived遇到的问题 主机192.168.100.10 备机192.168.100.20 VIP192.168.100.30 一.防火墙开启后双机都是master. 在搭建之后开启防火墙 ...

  9. android gallery 自定义边框+幻灯片效果

    最近在项目中用到图片轮播,试了Gallery,ViewFlipper,ViewPager,感觉Gallery最符合需求,但是Gallery的系统边框很难看,项目中要求用自己的背景图片. 下面来看一下使 ...

  10. Php自动备份数据库实现方法

    然后再服务器开启 定时任务执行这个方法即可.