SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@1f702deb] was not registered for synchronization because synchronization is not active
时间: 2023-10-21 15:58:59 浏览: 375
mybaits非配置原因,导致SqlSession was not registered for synchronization异常
5星 · 资源好评率100%
这个问题通常发生在使用Spring框架和MyBatis框架时,事务配置不正确。具体来说,当Spring的事务管理器(Transaction Manager)与MyBatis的事务管理器(SqlSession)不匹配时,就会出现这个问题。
解决方法如下:
1. 确认使用的事务管理器是Spring的事务管理器,而不是MyBatis的事务管理器。
2. 确认在Spring的配置文件中正确配置了事务管理器,包括数据源和事务属性。
3. 确认在MyBatis的配置文件中正确配置了数据源和事务管理器。
4. 确认在代码中获取SqlSession时,使用的是Spring的SqlSessionTemplate,而不是MyBatis的SqlSession。
5. 确认Spring的事务管理器和MyBatis的事务管理器使用的是同一个数据源。
如果以上方法都无法解决问题,可以考虑重新检查Spring和MyBatis的整合配置,或者尝试使用其他的事务管理方式。
阅读全文