首页 > 解决方案 > 嗨,我正在尝试添加 @Value("${name}") 私有字符串名称;在 dto 字段中,但无法从 application.properties 中读取

问题描述

class dto{@Value("${name}")  private String name; }

应用程序属性

op.name=${OP_NAME:22-2}

//当我尝试读取它时返回 null 如何解决这个问题

标签: spring-boot

解决方案


@Value注释只会在 Spring 管理的 bean 上处理(例如,带注释@Component的类)。

此外,您需要@Value按如下方式指定属性键,以便与属性文件中定义的键匹配:

@Value("${op.name:fallback}")
private String name;

然后,您的属性文件可以携带可配置的值:

op.name=Some Name

推荐阅读