springboot @Value获取值为空,解决办法

Posted 西木-Lee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot @Value获取值为空,解决办法相关的知识,希望对你有一定的参考价值。

在spring中,常常使用 @Value("${property}") 从application.properties中取值,需要注意两点

  1. 使用 @Value 的类不能使用 new 关键字进行实例化对象,必须采用 依赖注入的方式进行实例化
  2. 不能使用显式的构造方法

否则,将取不到值.解决方法如下:

  •   删除显式的构造方法,需要使用构造方法初始化的内容可以使用@PostConstruct
@PostConstruct //加上该注解表明该方法会在bean初始化后调用
private void init() {
  //添加你的内容
}

 

  •   使用构造方法注入
public LogConsumer(@Value("${report.period}") long reportPeriod) {
        this.reportPeriod = reportPeriod;
        System.out.println(reportPeriod + "1111111111111111111111111111111111111111");
        
    }

 



以上是关于springboot @Value获取值为空,解决办法的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot中配置文件详解(ymlproperties全局配置和自定义配置),获取配置方式

java map.put(key,value) value中有一个空值,无法插入到map中,怎么解决?

值不能为 null 或空. 参数名: value

解决Andriod获取Session里面的值为空

ayer.prompt 怎样让输入值为空也可以向下执行

mybatis中一直获取xml配置文件输入流值为空的类似解决方法