springboot 2.0, list下标必须要从0开始,无法从0开始则用map
springboot 2.0以下,list的下标可是随便设置
1 自定义citycode.properties
#List properties
citycode.list[0]=www
citycode.list[1]=localhost
citycode.list[2]=wuhan
citycode.list[3]=tianjin
#Map Properties
citycode.map.www=4201
citycode.map.wuhan=4201
citycode.map.tianjin=1200
或
#Map Properties
citycode.map={www:"4201",wuhan:"4201",tianjin:"1200"}
#List properties
citycode.list=www,localhost,wuhan,tianjin
2 设置一个类去读取properties
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Data
@Configuration
@PropertySource("classpath:citycode.properties")
@ConfigurationProperties(prefix = "citycode")
public class CityCodeConfig {
private List<String> list = new ArrayList<>();
private Map<String, String> map = new HashMap<>();
}
3 直接使用即可
@Autowired
private CityCodeConfig cityCodeConfig;
————————————————
4、其他
#map-- map<String,List<String>>
data01.mapList.key1[0]=java
data01.mapList.key1[1]=hadoop
data01.mapList.key1[2]=flink
data01.mapList.key2[0]=pyhthon
data01.mapList.key2[1]=c++
data01.mapList.key2[2]=scala
#list -- List<Map<String,String>>
data01.listMap[0].key1=apple0
data01.listMap[0].key2=apple1
data01.listMap[1].key1=apple3
data01.listMap[1].key2=apple4
#map-- map<String,List<POJO>>
data02.mapList.key1[0].name=zhangsan
data02.mapList.key1[0].sex=male
data02.mapList.key1[0].age=30
data02.mapList.key1[1].name=lisi
data02.mapList.key1[1].sex=female
data02.mapList.key1[1].age=33
data02.mapList.key2[0].name=wangwu
data02.mapList.key2[0].sex=male
data02.mapList.key2[0].age=35
#list -- List<Map<String,POJO>>
data02.listMap[0].key1[name]=zhangsan
data02.listMap[0].key1[sex]=male
data02.listMap[0].key1[age]=17
data02.listMap[1].key1[name]=lisi
data02.listMap[1].key1[sex]=female
data02.listMap[1].key1[age]=18
————————————————