小記:idea中springboot無法自動裝配Could not autowire. No beans of 'UserMapper' type found. more...
問題如圖所示
如果你遇到的情況也是這樣,下面的步驟將帶你快速出坑。
方案一
在自動轉配的注解后面添加(required=false)
@Autowired(required=false) public UserMapper userMapper;
當我們在使用@Autowired注解的時候,默認required=true,表示注入的時候bean必須存在,否則注入失敗。
方案二
效果如圖所示
方案三
在UserMapper上面添加
@Component(value =“userMapper”)
雖然能解決紅線的問題,
@Component注解,表明當需要創建類時,這個被注解的類是一個候選類。相當於類交給Spring管理,重新起個名字叫userMapper,但是並不推薦這樣做。
在SpringBoot中集成MyBatis,可以在mapper接口上添加@Mapper注解,將mapper注入到Spring。但是如果每一給mapper都添加@mapper注解會很麻煩!!!
這時可以使用@MapperScan注解來掃描包。
所以,一般在Application上面標注了MapperScan,如圖所示。