[英]Reading from yaml is showing null values
要從yaml文件中讀取,我正在執行以下操作
@Configuration
@EnableConfigurationProperties
@ConfigurationProperties("partners")
public class YAMLConfig {
private Map<String,String> partners = new HashMap<>();
public void setPartners(Map<String, String> partners) {
this.partners = partners;
}
public Map<String, String> getPartners() {
return partners;
}
}
yaml文件
person2:
name: bbb
addresses:
to: jiang
bit: su
partners:
p1: wallet
p2: wallet
p3: wallet
在其他Java文件中,我自動裝配以獲得YamlConfig
@Service
public class ObjectModificationService {
@Autowired
YAMLConfig yamlConfig;
public JSONObject modify(JSONObject jsonObject ) {
String type = yamlConfig.getPartners().get(partnerName.toLowerCase());
}
}
我沒有上面的任何類型,也檢查調試中的yamlConfig.getPartners()它是否為空。 我正在關注本教程: https : //www.baeldung.com/spring-yaml ,但是當我將ConfigurationProperties放在沒有ConfigurationProperties(“合作伙伴”)的情況下IDE再次顯示錯誤。
在yml配置類中,將屬性注釋設置為“partners”,這意味着YAMLConfig類將僅嘗試讀取partner部分。 “person2”部分將不會被閱讀。
要檢索依賴注入值,只需調用: yamlConfig.getPartners()
此外,請確保application.yml位於資源目錄中和/或與.jar位於同一目錄中
您指定的合作伙伴地圖接受字符串值。 所以,在yaml配置文件中嘗試使用引號('')格式化的Map值
person2:
name: bbb
addresses:
to: jiang
bit: su
partners:
p1: 'wallet'
p2: 'wallet'
p3: 'wallet'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.