使用SSM搭建WEB项目时,采用mybatis-generator-core包自动搭建model实体,当SSM运行到实体时出现如下错误
错误提示
第一种原因
产生这个原因是因为在mybatis+spring整合中,由于mybatis+spring版本于mybatis版本不对应的问题
第一种解决方案
产生错误之前mybatis版本为3.4.5,mybatis+spring为1.2.3
更改为
mybatis版本改为3.5,mybatis+spring变为2.0或更高,
mybatis+spring官网说明
http://www.mybatis.org/spring/zh/
第二种错误原因
但是,在没有使用mybatis-generator-core自动创建model之前没有出现上述问题,可能是注册model中的变量类型不一致。
经过仔细检查使用mybatis-generator-core创建的model和不适用自动创建model的实体后发现。
左为mybatis-generator-core自动创建实体。。右为主动创建的实体
,产生org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer
是因为model中的变量类型为integer。。
具体内部原因不明。
第二种解决方案
将model中的integer改为int