记一次springboot @Value注解无法注入配置文件的错误

Posted J1ac

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次springboot @Value注解无法注入配置文件的错误相关的知识,希望对你有一定的参考价值。

公司一个service需要用到一些java库,于是索性使用springboot进行开发,在看了一遍springboot教学视频之后就开始上手。。算是边踩坑边进步。

在把主要逻辑部分完成之后需要将部分参数移到application.properties中去,然后按照网上一般的介绍,我选择了最简单的一种注入参数的方法:@Value注解。

但在实际折腾过程中,我在一个类中注入的@Value死活无法起作用, 各种查错误原因,甚至换了数据的类型,就是没办法。

最后解决问题的契机是我发现同样的注入方法@Value在RestController类中就完全没问题。。。。。。

在重新回顾了一下spring以及springboot的基本原理之后我突然恍然大悟:

只有成为bean以及由spring容器装配的bean才能够实现这样的参数注入。

我的当前这个类虽然也被我标注了@Component,但是在另一处使用它的时候我依然像C++一样手动new了一个。。这种实例怎么可能有自动注入的参数呢?!

这么简单一个bug花费了我好长时间。

 

我认真学习java的时间不长,这次debug让我认识到对于一门语言或者框架原理知识学习的重要性。

以上是关于记一次springboot @Value注解无法注入配置文件的错误的主要内容,如果未能解决你的问题,请参考以下文章

记一次启动 SpringBoot 失败的问题

记一次docker springboot无法访问

记一次spring里bean无法注入的历程

Springboot注解 - @Lazy和@Scope

记一次IDEA利用mybatis-generator自动生成dao和mapper

记一次Springboot启动异常