为spring添加事务管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为spring添加事务管理相关的知识,希望对你有一定的参考价值。

 

    今天把项目中的事务管理配置完成,在这个过程中可谓一波三折,刚开始出现不少问题,最后自己都一一克服了。

    今天在做spring配置的时候比较心急,总想着让自己快速的配置完成,这样自己就有时间去做别的工作,自己总是让自己马不停蹄的解决问题,不给自己留有空间,其实自己按照自己的节奏认真的分析问题,自己把所有问题都解决了。所以自己有个总结:自己在工作中可以让自己慢下来,慢慢的把问题解决掉,自己不要心急,总是在催促自己。自己心里知道这个紧迫感,紧迫感是让自己投入进去,不要一边聊着天一边编程或者做其他的事情,这样自己会非常不投入。所以更好的状态是让自己慢下来,但是让自己投入进去。靠着时间的积累不断的提高自己,不要想着一口吃个胖子,时间会成为自己最好的朋友。

下面为配置文件:

    <bean id="transactionManager"
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>
     <!-- 事务控制   --> 
    <tx:annotation-driven transaction-manager="transactionManager" /> 
    <!--添加事务处理方法,以后打开此操作  -->
     <tx:advice id="txAdvice" transaction-manager="transactionManager">
            <tx:attributes>
                <tx:method name="*.do" propagation="REQUIRED" />
            </tx:attributes>
     </tx:advice>
    <aop:config>
    <aop:pointcut id="interceptorPointCuts"
            expression="execution(* com.spring.controller.*.*(..))" />
        <aop:advisor advice-ref="txAdvice" pointcut-ref="interceptorPointCuts" />
    </aop:config>

当一个请求执行多条sql语句时,例如有4个请求,当第三个sql语句发生异常,第一二个sql也没有执行,这样可以保证数据的准确性,避免脏数据。

以上是关于为spring添加事务管理的主要内容,如果未能解决你的问题,请参考以下文章

Spring添加声明式事务

如何删除使用片段管理器添加的所有片段?

片段事务中的实例化错误

VS中添加自定义代码片段——偷懒小技巧

YASnippet - emacs 的代码片段管理工具

Java itext为pdf 文件添加水印核心功能代码片段