关于Java中@Component的使用中出现@Autowired为NULL的问题

目录:

关于Java中@Component的使用中出现@Autowired为NULL的问题

解决过程

我在写一个项目中使用@Component配置了一个RedisCompent在这里插入代码片类我将在AccountControllerUserinfoController中对该类进行了依赖注入

但是最疑惑的是在 AccountController调用 rediscompent使用其中方法是爆出 rediscompent is null 这个报错 但是在userinfoController中缺并未报错

让我百思不得其解(就好比你在北京拿了一锁和钥匙在北京就能打开,但是去了山西就不行了,这把锁也没有收到任何环境的影响还是原本的那把锁);

我就去看了注入依赖 发现也没有什么问题

然后我去上网查资料找到了以下几种解决方法 (@Component加入容器之后@Autowired注入为null)@Autowired注入为null

  1. Bean对象并没有交给Spring管理

    检查@Autowired的对象是否已经被注入到Spring容器中了;

    确保使用@Autowired注解的对象也已存在Spring的容器中。

  2. 对象使用过new关键字

    当一个对象使用过关键new时,它是不能被Spring所管理的。

    所以如果在这些对象中使用@Autowired去注入对象,得到的结果也是为null。

以上都不行最后觉得有一种可能

在@Component注解的类下,再使用了@Resource或@Autowired注解。如此操作会导致依赖注入失败。

这是因为spring加载它们的顺序不同,在使用@Component注解将bean实例化到spring容器内的时候,因为@Autowired是在这个bean之中的,此时@Autowired还未完成自动装载,所以导致依赖注入的service为null

最后我我使用在通过set方法进行注入成功解决了这个报错

但是我还是不理解为什么在同一个controller包下在usercontroller中就可以使用 在accountcontroller下面就报错 如果大佬知道,可发评论告知小弟,小弟感激不尽

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力

相关推荐
qingmiaozhuan1 天前
软件测试Bug复现高清录屏标准流程:新手入门与规范指南(2026实战版)
bug·电脑录屏·电脑录屏软件·测试录屏规范·音画同步录制
凌云拓界2 天前
NodeVerdict:Node.js 原生诊断数据可视化工具
信息可视化·架构·typescript·开源·node.js·github·bug
蓝天下的守望者6 天前
验证环境中使用队列的pop_front()思维惯性引发的bug
bug
一只小菜鸡..6 天前
南京大学 操作系统 (JYY) 学习笔记:并发 Bug 的地狱——数据竞争、死锁与原子性违反
笔记·学习·bug
名字还没想好☜7 天前
React 受控输入框光标跳到末尾:格式化输入时的 selection 丢失 bug 与修复
前端·javascript·react.js·bug·react·next.js
陈 洪 伟8 天前
大模型推理引擎vLLM(30):由一个GLM5 bug,整理MLP中的SwiGLU、算子融合、量化相关问题
bug·mlp·vllm
endeavor129 天前
BUG(记录)
bug
不断学习加努力11 天前
使用rviz2进行可视化时,cpu资源占用过高的bug
bug
happyness4411 天前
如何利用 AI 自动编写单元测试(Unit Test)来捕捉隐藏的边缘情况 Bug?
人工智能·单元测试·bug
深念Y11 天前
Windows幽灵端口占用:HNS如何无声偷走你的端口
windows·python·bug·环境·端口·特权