首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

用spring测试框架测试Mysql数据库时务务无法回滚

2012-07-27 
用spring测试框架测试Mysql数据库时事务无法回滚问题描述:????? 在做DAO层得的成单元测试时,测试类XXXDAOI

用spring测试框架测试Mysql数据库时事务无法回滚

问题描述:

????? 在做DAO层得的成单元测试时,测试类XXXDAOIntegrationTest 继承了spring的测试基类AbstractTransactionalJUnit4SpringContextTests, 测试时事务没有正常回滚.

解决方案:

??? 首先排查代码没有问题. 最后发现是建立数据库表时, 没有指定表的引擎. 而Mysql5.x在linux下的默认引擎是MyISAM, 而不是期望的InnoDB, 所以建立数据库表时如果没有指定引擎, 那么表的引擎MyISAM, 从而导致不支持事务. 解决办法是把所有的表的引擎改为InnoDB后, 事务正常回滚了.

热点排行