配置多层嵌套
参考SpringBoot中@ConfigurationProperties对于多层嵌套参数的正确加载方法
配置复杂Map
# ==================================================================================
# 人员
# ==================================================================================
kfang.infra.person.incubate.000000.before-position-ids=0225,0226
kfang.infra.person.incubate.000000.before-level-id=155
kfang.infra.person.incubate.000000.after-level-id=156
kfang.infra.person.incubate.000000.le-before-level-ids=154,155
kfang.infra.person.incubate.000001.before-position-ids=0225,0226
kfang.infra.person.incubate.000001.before-level-id=155
kfang.infra.person.incubate.000001.after-level-id=156
kfang.infra.person.incubate.000001.le-before-level-ids=154,155
/**
* 人员 属性类
* @author panxili
* @date 2022/4/24
*/
@Data
@ConfigurationProperties(prefix = "kfang.infra.person")
@Component
@RefreshScope
public class PersonProperties {
/**
* k - 平台组织id,v - 孵化属性
*/
private Map<String, IncubateProperties> incubate;
/**
* 孵化 属性类
*/
@Data
public static class IncubateProperties {
private Set<String> beforePositionIds;
private String beforeLevelId;
private String afterLevelId;
private Set<String> leBeforeLevelIds;
}
}