@Autowired报错的4种解决方案和原因分析!(3)

简介: @Autowired报错的4种解决方案和原因分析!(3)

解决方案2:添加Spring注解


在 Mapper 的类上添加 Spring 的注解,也可以解决 IDEA 报错的问题,如 @Repository 或 @Component 这类注解,如下图所示:


微信图片_20220120193625.jpg


或使用 @Repository 注解,如下图所示:


微信图片_20220120193645.jpg


查看之前的报错信息:


微信图片_20220120193704.jpg


报错消失了。


解决方案3:允许注入对象为NULL


设置允许注入的 Mapper 对象为 NULL,也可以避免 IDEA 报错,只需要设置 @Autowired(required=false) 即可,如下图所示:


微信图片_20220120193728.jpg


(其中 userMapper2 对象就不报错了)


  • @Autowired(required=true):表示当使用 @Autowired 注解的时候,该 bean 必须存在,否则注入失败,默认值。


  • @Autowired(required=false):表示忽略当前要注入的 bean,如果有直接注入,没有则跳过,不会报错。


相关文章
|
5月前
|
前端开发 Java
|
2月前
|
安全 Java 开发者
开发者必看!@Resource与private final的较量,Spring Boot注入技巧大揭秘,你不可不知的细节!
【8月更文挑战第29天】Spring Boot作为热门Java框架,其依赖注入机制备受关注。本文通过对比@Resource(JSR-250规范)和@Autowired(Spring特有),并结合private final声明的字段注入,详细探讨了两者的区别与应用场景。通过示例代码展示了@Resource按名称注入及@Autowired按类型注入的特点,并分析了它们在注入时机、依赖性、线程安全性和单一职责原则方面的差异,帮助开发者根据具体需求选择最合适的注入策略。
34 0
|
5月前
|
Java Spring 容器
太棒啦!Autowired工作流程
太棒啦!Autowired工作流程
|
Java 容器
Java实现Autowired自动注入
Test2正常 Test3空指针 因为不在容器里
120 0
|
缓存 Java 容器
九.Spring源码剖析-Autowired自动注入原理
这篇文章接上一篇文章属性注入讲一讲 @Autowired 注解的实现源码,这个也是面试被问的比较多的。
|
小程序 前端开发 Java
java如何利用JWT和注解,自定义参数的方式优雅实现小程序用户Id管理
在我们的开发项目中,经常需要用到用户ID,比如在小程序商城系统中,我们将商品加入购物车,这时前端就需要发送请求,携带上用户的ID。基本上很多种请求操作都需要携带用户ID,如果每个请求都需要我们往data中添加id的话,那样需要写很多重复代码,并且代码也不美观;所以我们可以利用JWT跟注解的方式来实现;
188 0
|
缓存 Java Spring
Spring源码分析之Bean的创建过程详解(一)
Spring源码分析之Bean的创建过程详解
144 0
|
XML 存储 Java
【Spring专题】「原理系列」全方面解析SpringFramework的Bean对象的深入分析和挖掘指南
【Spring专题】「原理系列」全方面解析SpringFramework的Bean对象的深入分析和挖掘指南
176 0
【Spring专题】「原理系列」全方面解析SpringFramework的Bean对象的深入分析和挖掘指南
|
Java Spring
Spring源码分析之Bean的创建过程详解(二)
Spring源码分析之Bean的创建过程详解
92 0
|
Java Spring
Spring源码分析之Bean的创建过程详解(三)
Spring源码分析之Bean的创建过程详解
86 0