使用@ConfigurationProperties和類的方式讀取yml檔案中的值
阿新 • • 發佈:2018-12-08
問題:yml檔案的屬性如下
nuoche:
privateNumber:
appkey: 7L57717mzPP6cr
appSecret: iWoVQ5s4kr75D
domainName: https://www.caocao.com
如何通過@ConfigurationProperties註解讀取這些值,並把值封裝到一個類(PrivateNumber)中?
解決辦法
1.新增一個配置類
@ConfigurationProperties(prefix = MyValue.PREFIX) @Service("myProperties") @Data public class MyProperties { public static final String PREFIX = "nuoche"; private PrivateNumber privateNumber; @Data public static class PrivateNumber{ // 要加static描述符,不然會報異常 private String appkey; private String appSecret; private String domainName; } }
2.編寫一個測試類
@SpringBootTest
@RunWith(SpringRunner.class)
public class MyPropertiesTest {
@Autowired
private MyProperties myProperties;
@Test
public void say() {
System.out.println(myProperties.getPrivateNumber().getAppkey());
}
}
3.測試:先啟動整個工程,然後再執行測試方法。最後得到結果為:7L57717mzPP6cr