mybatis-spring版本过低引发的问题

一、情景描述

        最近在搭建SpringMVC + Mybatis + Maven结构的小demo,中途在测试从数据库中取数据的时候,遇到了一个问题。报错如下图:

mybatis-spring版本过低引发的问题

二、解决办法

    在项目中找到spring和mybatis的整合jar包:mybatis-spring(属于org.mybatis),把其版本修改成1.3.0或以上。



三、问题分析:

   1.根据上图报错提示可知,在org.mybatis.spring.transaction.SpringManagedTransaction中,getTimeout()方法有问题;

   2.打开对应的jar包及文件,发现1.3.0版本以下,并没有getTimeout()这个方法。如下图所示:

    mybatis-spring版本过低引发的问题

    3.再打开1.3.0版本的jar包,可以看到getTimeout()这个方法。

    mybatis-spring版本过低引发的问题