之前使用过@value(“${name}”)来读取springboot配置文件中的配置信息,比如:
后面遇到一个新问题,如果我要把配置文件中的一系列数据一下子读出来到同一个数据结构中怎么办呢?
比如说读取配置信息到map或者list
下面来讲述一下如何实现这个功能。
首先看配置文件要读到map中的信息:
接着我们需要再maven的pom.xml文件中添加如下依赖:
然后定义一个配置类,代码如下:
这样,我们就可以把配置文件中的数据以map形式读出来了,key就是配置信息最后一个后缀,value就是值。
测试代码请看文章最后。
首先看配置文件要读到list中的信息:
接着如上添加spring-boot-configuration-processor依赖项。
然人大会议时间后定义配置类,代码如下:
编写测试类:
运行测试类,发现控制台输出如下:
limitsizemap读取成功,数据如下:
key: qq, value: 1024
key: baidu, value: 1024
key: sogou, value: 90
key: hauwei, value: 4096
——
limitsizelist读取成功,数据如下:
baidu: 1024
sogou: 90
hauwei: 4096
qq: 1024
添加配置文件处理器的依赖,这样在编写配置文件的时候就会有提示了。
有了依赖,可以直接使用application.properties文件为我们工作了,这是springboot的默认文件,它会通过其机制读取到上下文中,这样就可以引用它了
在使用maven项目中,配置文件会放在resources根目录下。
我们的springboot是用maven搭建的,所以springboot的默认配置文件和自定义的配置文件都放在此目录。
springboot的 默认配置文件为application.properties或application.yml,这里我们使用application.properties。
首先在application.properties中添加我们要读取的数据。
我们可以通过@value注解,这是spring就有的,使用${…}占位符来读取配置在属性文件中的内容,既可以加在属性也可以加在方法上
我们在测试环境试一下:
如果有很多俯角我们就要写很多@value,就会很麻烦,于是就有第二种方式
通过注解@configurationproperties(prefix=”配置文件中的key的前缀”)可中央金融工作会议2017以将配置文件中的配爆炒土豆丝置自动与实体进行映射,默认从全局配置文件中获取值。
@configurationproperties(“custom”)这里的字符串databa会和类中的属性名称组成全限定名去配置文件中查找
1、如何获取list数据
又该如何读取呢?
首先这是一个el表达式,${test.list:} 是为它加上默认值,但是这样有个问题,当不配置该 key 值,默认值会为空串,它的 length = 1,这样解析出来 list 的元素个数就不是空了
保护眼睛的作文
所以在此之前先判断一下是否为空,最终写成这样@value(“#{‘${test.list:}’.empty ? null : ‘${test.list:}’.split(‘,’)}”) 就完美了,遍历的结果
2、如何获取map数据
以上为个人经验,希望能给大家一个参考,也希望大家多多支持www.887551.com。
本文发布于:2023-04-05 20:25:30,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/a5c9951c0d9dc47c7f243f6119d2e0f3.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:SpringBoot如何读取配置文件中的数据到map和list.doc
本文 PDF 下载地址:SpringBoot如何读取配置文件中的数据到map和list.pdf
留言与评论(共有 0 条评论) |