在spring boot中,简单几步,读取配置文件(application.yml)中各种不同类型的属性值:

1、引入依赖:
<!-- 支持 @ConfigurationProperties 注解 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>
2、配置文件(application.yml)中配置各个属性的值:
myProps: #自定义的属性和值 simpleProp: simplePropValue arrayProps: 1,2,3,4,5 listProp1: - name: abc value: abcValue - name: efg value: efgValue listProp2: - config2Value1 - config2Vavlue2 mapProps: key1: value1 key2: value2
3、创建一个bean来接收配置信息:
@Component
@ConfigurationProperties(prefix="myProps") //接收application.yml中的myProps下面的属性
public class MyProps {
private String simpleProp;
private String[] arrayProps;
private List<Map<String, String>> listProp1 = new ArrayList<>(); //接收prop1里面的属性值
private List<String> listProp2 = new ArrayList<>(); //接收prop2里面的属性值
private Map<String, String> mapProps = new HashMap<>(); //接收prop1里面的属性值
public String getSimpleProp() {
return simpleProp;
}
//String类型的一定需要setter来接收属性值;maps, collections, 和 arrays 不需要
public void setSimpleProp(String simpleProp) {
this.simpleProp = simpleProp;
}
public List<Map<String, String>> getListProp1() {
return listProp1;
}
public List<String> getListProp2() {
return listProp2;
}
public String[] getArrayProps() {
return arrayProps;
}
public void setArrayProps(String[] arrayProps) {
this.arrayProps = arrayProps;
}
public Map<String, String> getMapProps() {
return mapProps;
}
public void setMapProps(Map<String, String> mapProps) {
this.mapProps = mapProps;
}
}
启动后,这个bean里面的属性就会自动接收配置的值了。
4、单元测试用例:
@Autowired
private MyProps myProps;
@Test
public void propsTest() throws JsonProcessingException {
System.out.println("simpleProp: " + myProps.getSimpleProp());
System.out.println("arrayProps: " + objectMapper.writeValueAsString(myProps.getArrayProps()));
System.out.println("listProp1: " + objectMapper.writeValueAsString(myProps.getListProp1()));
System.out.println("listProp2: " + objectMapper.writeValueAsString(myProps.getListProp2()));
System.out.println("mapProps: " + objectMapper.writeValueAsString(myProps.getMapProps()));
}
测试结果:
simpleProp: simplePropValue
arrayProps: ["1","2","3","4","5"]
listProp1: [{"name":"abc","value":"abcValue"},{"name":"efg","value":"efgValue"}]
listProp2: ["config2Value1","config2Vavlue2"]
mapProps: {"key1":"value1","key2":"value2"}
源代码参考:https://github.com/xujijun/my-spring-boot
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# spring
# boot
# yml配置
# yml文件
# 加载yml
# 在SpringBoot下读取自定义properties配置文件的方法
# Spring Boot 日志配置方法(超详细)
# SpringBoot + Spring Security 基本使用及个性化登录配置详解
# 详解SpringBoot配置连接池
# SpringBoot获取yml和properties配置文件的内容
# spring boot Logging的配置以及使用详解
# spring boot的maven配置依赖详解
# spring boot开发遇到坑之spring-boot-starter-web配置文件使用教程
# Springboot配置doris连接的实现示例
# 配置文件
# 就会
# 不需要
# 自定义
# 几步
# 创建一个
# 源代码
# 大家多多
# 单元测试
# 各种不同类型
# abc
# efg
# abcValue
# myProps
# simpleProp
# arrayProps
# simplePropValue
# configuration
# mapProps
相关文章:
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
如何在IIS中配置站点IP、端口及主机头?
,在苏州找工作,上哪个网站比较好?
教育培训网站制作流程,请问edu教育网站的域名怎么申请?
如何通过VPS建站实现广告与增值服务盈利?
北京企业网站设计制作公司,北京铁路集团官方网站?
北京网站制作公司哪家好一点,北京租房网站有哪些?
Java解压缩zip - 解压缩多个文件或文件夹实例
如何通过WDCP绑定主域名及创建子域名站点?
建站主机CVM配置优化、SEO策略与性能提升指南
,网页ppt怎么弄成自己的ppt?
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
北京网站制作网页,网站升级改版需要多久?
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
建站之星后台密码遗忘如何找回?
网站制作难吗安全吗,做一个网站需要多久时间?
山东网站制作公司有哪些,山东大源集团官网?
官网建站费用明细查询_企业建站套餐价格及收费标准指南
如何制作一个表白网站视频,关于勇敢表白的小标题?
广东专业制作网站有哪些,广东省能源集团有限公司官网?
如何登录建站主机?访问步骤全解析
测试制作网站有哪些,测试性取向的权威测试或者网站?
建站之星安装后如何配置SEO及设计样式?
简历在线制作网站免费版,如何创建个人简历?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
怀化网站制作公司,怀化新生儿上户网上办理流程?
已有域名和空间如何搭建网站?
如何通过商城免费建站系统源码自定义网站主题?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
建站之星备案是否影响网站上线时间?
已有域名如何快速搭建专属网站?
香港服务器租用每月最低只需15元?
家庭建站与云服务器建站,如何选择更优?
智能起名网站制作软件有哪些,制作logo的软件?
如何在阿里云完成域名注册与建站?
英语简历制作免费网站推荐,如何将简历翻译成英文?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
建站主机是否等同于虚拟主机?
如何在宝塔面板中修改默认建站目录?
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
长沙做网站要多少钱,长沙国安网络怎么样?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
如何通过虚拟主机空间快速建站?
如何在阿里云服务器自主搭建网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。