本篇内容介绍了“springBoot配置文件properties和yml中数组的写法有什么不同”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
这里介绍一下springBoot中的两种文件配置方式中数组的使用,也就是集合。
以下是我springBoot中使用的 application.properties 文件
其实很好理解,我的configs是一个集合,configs[0].appid代表我配置的第一个对象中的appid的值
miniapp.configs[0].appid = 111111
miniapp.configs[0].secret= 222222
miniapp.configs[0].token = 333333
miniapp.configs[0].aesKey = 444444
miniapp.configs[0].msgDataFormat = JSON
miniapp.configs[1].appid = 111
miniapp.configs[1].secret = 222
miniapp.configs[1].token = 333
miniapp.configs[1].aesKey = 444
miniapp.configs[1].msgDataFormat = JSON
这个是使用application.yml的方式,因为YAML 本身支持 list 类型,所以可以在 application.yml 文件中添加:
yml如果配置普通字符串
miniapp:
configs:
- appid: 111
secret: 222
token: 333
aesKey: 444
msgDataFormat: JSON
- appid: 111
secret: 222
token: 333
aesKey: 444
msgDataFormat: JSON
下面展示类代码的写法:
package com.platform.miniprogram;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Classname WxMaProperties
* @Description TODO
* @Date 2020/10/10 10:48
* @Created by lyc
*/
@Data
@ConfigurationProperties(prefix = "miniapp")
@Component
public class WxMaProperties {
private List<Config> configs;
@Data
public static class Config {
/**
* 设置微信小程序的appid
*/
private String appid;
/**
* 设置微信小程序的Secret
*/
private String secret;
/**
* 设置微信小程序消息服务器配置的token
*/
private String token;
/**
* 设置微信小程序消息服务器配置的EncodingAESKey
*/
private String aesKey;
/**
* 消息格式,XML或者JSON
*/
private String msgDataFormat;
}
}
解释:
@Data就是省略了get/set方法你可以直接删掉写成get/set
@ConfigurationProperties(prefix = "miniapp")
prefix 这个前缀一定要写对
configs是集合的名字,要和配置表中的信息一致。这样基本就可以了。
例如:redis配置的properties或yml文件,如下:
spring.redis.cluster.nodes[0]=192.168.0.1:6379
spring.redis.cluster.nodes[1]=192.168.0.2:6379
或
spring:
redis:
cluster:
nodes:
- 192.168.0.1:6379
- 192.168.0.2:6379
示例:2
environments:
dev:
url: http://dev.bar.com
name: Developer Setup
prod:
url: http://foo.bar.com
name: My Cool App
上面的YAML文档会被转化到下面的属性中:
environments.dev.url=http://dev.bar.com
environments.dev.name=Developer Setup
environments.prod.url=http://foo.bar.com
environments.prod.name=My Cool App
YAML列表被表示成使用[index]间接引用作为属性keys的形式,例如下面的YAML:
my:
servers:
- dev.bar.com
- foo.bar.com
将会转化到下面的属性中:
my.servers[0]=dev.bar.com my.servers[1]=foo.bar.com
“springBoot配置文件properties和yml中数组的写法有什么不同”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。