zoukankan      html  css  js  c++  java
  • @Transactional失效的问题

    spring事物配置一般没有问题,

    优先检查mysql的引擎是否是innodb,

    是的话检查包的扫描是否有问题。

    我就是因为包的扫描导致@Transactional失效。

    具体情况如下,

    在spring-mvc.xml文件里写了

     <!-- 扫描controller(controller层注入) -->
       <context:component-scan base-package="com.test"/>

    在spring.xml文件里写了

      <!-- 扫描文件(自动将servicec层注入) -->
        <context:component-scan base-package="com.test.service"/>

    重复扫描,导致事物失效,后来把spring-mcv.xml里的扫描改成

    <context:component-scan base-package="com.test.controller"/>

    问题解决。。。。

    原因就是父容器已经对bean进行扫描并做了事物管理,但是错误写法中,子容器本该只扫描controller,但是因为写错,导致全部又扫了一遍。

    所以之前做的事务管理失效。

    关于原因,有大神已经做过解释,这里不再赘述

    http://stackoverflow.com/questions/7774295/spring-xml-file-configuration-hierarchy-help-explanation/7774597#7774597

  • 相关阅读:
    [haoi2011]向量
    [haoi2008]硬币购物
    noi2001 [食物链]并查集p1697
    [haoi2012]容易题(数论+容斥的思想)
    p1620田忌赛马(贪心+模拟)
    p1368[扑街]广场铺砖
    [zjoi2010]网络扩容
    是时候写一篇总结了
    P1630 求和
    魔术棋子
  • 原文地址:https://www.cnblogs.com/younldeace/p/5253644.html
Copyright © 2011-2022 走看看