java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > springboot 配置文件自定义属性

springboot 使用yml配置文件自定义属性的操作代码

作者:yuanwanchao

在SpringBoot中yml/yaml文件可以自定义一些属性,以供注入给自定义bean对象的属性,主要通过空格和层次来实现,类似于python代码,本文通过实例代码给大家介绍springboot 使用yml配置文件自定义属性,感兴趣的朋友跟随小编一起看看吧

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中,否则也取不到值

扩展:

SpringBoot-属性配置yaml自定义属性和值 

SpringBoot-属性配置yaml自定义属性和值

在SpringBoot中yml/yaml文件可以自定义一些属性,以供注入给自定义bean对象的属性。主要通过空格和层次来实现,类似于python代码。

以下是一个Person类的yml文件:

person:
name: rayfoo
sex: man
age: 18
hobby: 1,2,3
listPro:
  - val1
  - val2
  - val3
listMapPro:
  - key1: val1
    key2: val2
  - key1: val1
    key2: val2
car:
  id: 01
  color: red
  price: 199999.99

下面是该类的Java代码:

packagecn.rayfoo.bean;
​
importlombok.Data;
importorg.springframework.boot.context.properties.ConfigurationProperties;
​
importjava.util.List;
importjava.util.Map;
​
/**
* @author 张瑞丰
* @description
* @date 2019/11/8
*/
@Data
@ConfigurationProperties(prefix="person")
publicclassPerson{
​
   privateStringname;
   privateStringsex;
   privateIntegerage;
   privateString[] hobby;
   privateList<String>listPro;
   privateList<Map<String,Object>>listMapPro;
   privateCarcar;
​
}

下面是其关联的car类

packagecn.rayfoo.bean;
​
importlombok.Data;
​
/**
* @author 张瑞丰
* @description
* @date 2019/11/8
*/
@Data
publicclassCar{
   privateIntegerid;
   privateStringcolor;
   privateDoubleprice;
}
​

到此这篇关于springboot 使用yml配置文件自定义属性的文章就介绍到这了,更多相关springboot 配置文件自定义属性内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

阅读全文