在做项目时,运行时出现了以下报错
报错的原因就是创建indexController这个bean出错了,嵌套异常是itemService不满足依赖,容器里面没有类型为“com.example.springboot2022nocv.dao的限定bean。indexMapper“available”:应至少有一个bean符合autowire候选条件。
网上的解决办法:
1、检查service的实现类serviceImpl上是否加了@Service注解,是否implement了service
均符合要求
2、检查类名和mapper扫描路径是否写错
扫描路径也符合要求
3、版本兼容问题
mybatis的3.4.0及以上版本只支持mybatis-spring1.3.0及以上版本
版本检查也没有问题
4、检查Controller层,看是否给注入的对象加 @Autowired注解
我的代码:
加了注解方法。
5、Service层,看是否给类加上@Service注解。
我的代码也有相关的注解
6、在springBoot 或springCloud中basePackages是通过注解@mapperScan(“”)方式扫描的,而不是以前的配置文件的方式,basePackages通常会写在application启动类上上面。
我就是这个问题报了错
添加了代码:@SpringBootApplication(scanBasePackages = {"con.example.springboot2022nocv"}) @MapperScan("con.example.springboot2022nocv.dao")
之后就可以解决这个报错