springboot 使用yml配置文件自定义属性

springboot 中在application.yml文件里自定义属性值,配合@Value注解可以在代码中直接取到相应的值,如在application.yml中添加

mqtt:
  serverURI: tcp://192.168.125.250:1939

topic:

 在代码中可以用

 @Value("${mqtt.topic}")
    private String topic ;
@Value("${mqtt.serverURI}")
    private String serverURI ;

取到相应的值;

如果java代码里的属性值是静态的,用上面的方式获取不到值,要使用set方法,如:

private  static String username ;
private  static String password ;
@Value("${yunfei.username}")
public void setUsername(String username) {
    HttpCilent.username = username;
}
@Value("${yunfei.password}")
public void setPassword(String password) {
    HttpCilent.password = password;
}
set方法不能是静态的,否则取不到值。
ps:@Value 注解包是
 org.springframework.beans.factory.annotation.Value;
要取属性值的对象必须注入到spring中,否则也取不到值

 转自:https://blog.csdn.net/yuanwanchao/article/details/79279658

猜你喜欢

转载自www.cnblogs.com/dauber/p/9316734.html