Spring MCV配置文件方式事务回滚失败(Mysql8.0+)

问题描述

在Mysql8.0+环境下,使用Spring MVC配置文件方式配置事务时,事务回滚失败。

解决方案

在Mysql8.0需要注入SqlSessionTemplate:

<!-- Mysql8.0事务配置回滚必须注入这个-->
<bean class="org.mybatis.spring.SqlSessionTemplate" id="sessionTemplate">
    <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory"/>
    <constructor-arg name="executorType" value="BATCH"/>
</bean>

关键点

必须注入SqlSessionTemplate,并设置executorType为BATCH模式。