1问题描述
在我搭建项目的时候采用的是SpringBoot+Mybaits的架构.于是我再创建项目的时候 直接让idea进行整合. idea采用了
spring-boot-starter-XXX 系列的框架版本来作为maven的jar包, 注意:问题就出在这
在我创建后各种demo.写好配置文件后测试的时候发现项目竟然无法启动.报错如下
Error creating bean with name 'adminDao' defined in file ..... Property 'sqlSessionFactory' or 'sqlSessionTemplate'
2:解决方法
在pom文件中换掉 mybatis-spring-boot-starter 这个插件
我更换的是以下版.换完之后.就可以正常启动了,
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
如果还无法启动的话 看看你的启动类 XXXApplication中是不是多了一句话
@MapperScan("com.he.demo.dao")
把这句删掉.就好了.
3:报错的原因
出现这个问题是因为 mybatis-spring-boot-starter 取消了sqlSessionFactory或sqlSessionTemplate的自动注入,属于系统缺陷,所以需要自己手动注入或者更换版本