当我需要用中文作为application.yml中的key时:
plc-name-map:
map:
开关机状态: 'switchSignal'
运行状态: 'runningState'
使用ConfigurationProperties获取map会空指针
解决:使用’[ 名称 ]’ 将名称包围,同理,除字母和下划线以外的其他字符都能取到
plc-name-map:
map:
'[开关机状态]': 'switchSignal'
'[运行状态]': 'runningState'
如何读取:
@Component
@ConfigurationProperties(prefix = "plc-name-map")
public class PlcNameMapProperties {
private Map<String, String> map;
public Map<String, String> getMap() {
return map;
}
public void setMap(Map<String, String> map) {
this.map = map;
}
}
最后在Application上标注:@EnableConfigurationProperties({PlcNameMapProperties.class})