yml配置
influxdb:
configs:
- userName:
passWord:
openUrl:
dataBase: dev
- userName:
passWord:
openUrl:
dataBase: test
- userName:
passWord:
openUrl:
dataBase: prod
类里的字段必须和配置中的字段一致
package com.rjow.manage.config;
public class InfluxDbConfig {
private String userName;
private String passWord;
private String openUrl;
private String dataBase;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getOpenUrl() {
return openUrl;
}
public void setOpenUrl(String openUrl) {
this.openUrl = openUrl;
}
public String getDataBase() {
return dataBase;
}
public void setDataBase(String dataBase) {
this.dataBase = dataBase;
}
@Override
public String toString() {
return "InfluxDbConfig{" +
"userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", openUrl='" + openUrl + '\'' +
", dataBase='" + dataBase + '\'' +
'}';
}
}
private List configs;
config必须是上面yml中的配置,跟其他因素无关!!
/**
* @author 批量读取yml中的数组, 然后赋值给InfluxDbConfig
* <p>
* 代码顺序逻辑是 MQComsumer消费消息 调用insert方法->调用factory获取conn(不存在则创建conn)->conn读取config
*/
@Configuration
@ConfigurationProperties(prefix = "influxdb")
public class BatchReadInfluxDbConfig {
//这里变量名必须和yml配置相等
private List<InfluxDbConfig> configs;
public List<InfluxDbConfig> getConfigs() {
return configs;
}
public void setConfigs(List<InfluxDbConfig> configs) {
this.configs = configs;
}
}