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

发布时间:2024年01月18日

今天在写一个自定义工具类的时候发现一个问题,就是@Component的使用中出现@Autowired为NULL,
在这里插入图片描述
按照redis 工具类写法是一样的按理说应该是可以用的,结果获取不到值。
在这里插入图片描述
这个主要问题是

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

这是因为spring加载它们的顺序不同,在使用@Component注解将bean实例化到spring容器内的时候,因为@Autowired是在这个bean之中的,此时@Autowired还未完成自动装载,所以导致依赖注入的service为null
其中解决办法很多
比如:
添加一个set方法
在这里插入图片描述
把@Autowired注解放在方法上会在类加载后自动注入这个方法的参数,并执行一遍方法。

文章来源:https://blog.csdn.net/weixin_44831330/article/details/135674198
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。