https://www.cnblogs.com/vipstone/p/14970723.html
@Resource 注解和 @Autowired 注解以當前的場景來說,它們的主要區別是 @Resource 是 Java 自身提供的注解,而 @Autowired 是 Spring 提供的注解,@Autowired 默認值為 required=true,所以必須要一個非 NULL 的對象,當 IDEA 檢測不到對象為 NULL 時就會報錯,而 @Resource 並沒有這項要求。使用 @Autowired 注解導入 Mapper 對象報錯的原因,是因為 @Autowired 默認情況下,需要注入一個非 NULL 的對象,而被 @Mapper 修飾的類為 MyBatis 的注解,IDEA 並不能很好的識別其為非 NULL 對象,因此就會報錯。當然,它的解決方案也有很多,推薦使用 @Resource 替代 @Autowired 注解的方式來解決此問題。