IntelliJ Idea报错Could not autowire. No beans of 'xxxx' type found的错误提示,并且编译运行时报错解决方案

在使用springboot整合mybatis的时候,在控制器中使用自动注入来注入一个mapper出现了Could not autowire. No beans of 'xxxx' type found报错,提示不能够自动注入bean。其实该问题如果编译运行程序不报错正常运行的话那么可能只是intellij idea的问题,如果不能够正常的编译运行,则可能是spring auto scan配置,在编辑情况下,无法找不到对应的bean,于是提示找不到对应bean的错误。

1、针对于可以正常编译运行但还是出现错误提示的解决方案:降低Autowired检测的级别,将Severity的级别由之前的error改成warning或其它可以忽略的级别。

 

2、针对于不能够正常编译运行的解决方案:正确的导入包,如果是检查错误提示中的类的包是否导入正确,这种错误最常见在mybatis中的mapper下,比如对于mybatis的的注解版或配置文件版的解决办法:

    ①.配置文件版:在全局配置文件中,配置要自动扫描进容器的包

<!-- mapper scanner configurer -->
<bean id="mapperScannerConfig" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="basePackage" value="com.wp.spring.mybatis.dao" />
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>

    ②.注解版:在运行的主类上加上注解:@MapperScan(value = "要自动扫描的包")-->(springboot整合mybatis的时候)。或则在mybatis项目中的mapper类上面加上注解@Mapper标识这是一个mapper,容器启动的时候就会自动加入到容器中了。示例如下:

    1.springboot主类:

    2.mybatis的mapper类:

 

 

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值