application.yml的集合写法在application.properties怎么写

简介: application.yml的集合写法在application.properties怎么写

配置类:



/**
 * @author <a href="https://github.com/binarywang">Binary Wang</a>
 */
@Data
@Component
@ConfigurationProperties(prefix = "wx.miniapp")
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;
    }

}

application.yml


wx:
  miniapp:
    configs:
      - appid: xxx #微信小程序的appid
        secret: xxx #微信小程序的Secret
        token: xxx #微信小程序消息服务器配置的token
        aesKey: xxx #微信小程序消息服务器配置的EncodingAESKey
        msgDataFormat: JSON

测试类输出:






@RunWith(SpringRunner.class)
@SpringBootTest
public class PropertiesTest {

    @Autowired
    private WxMaProperties properties;


    @Test
    public void getProperties() {
        List<WxMaProperties.Config> configs = properties.getConfigs();
        System.out.println(configs);
    }
}

结果:

[WxMaProperties.Config(appid=xxx, secret=xxx, token=xxx, aesKey=xxx, msgDataFormat=JSON)]

application.properties写法:

wx.miniapp.configs[0].appid = xxx

wx.miniapp.configs[0].secret    = xxx

wx.miniapp.configs[0].token = xxx
wx.miniapp.configs[0].aesKey = xxx
wx.miniapp.configs[0].msgDataFormat = JSON

测试类输出结果:

[WxMaProperties.Config(appid=xxx, secret=xxx, token=xxx, aesKey=xxx, msgDataFormat=JSON)]

解释:
application.yml里的 每一个 “-” 可以理解为一个对象。对象里有 appid、secret、 token、aesKey、msgDataFormat 这些属性。

这种写法在application.properties可以用[0] 来代替。我们知道,数组下标从0开始,因此,[数字]里的每一个数字就相当于application.yml里的一个 “-”。

相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
Java Spring
Spring Boot 应用使用 application.yml 和 application.properties 的区别
Spring Boot 应用使用 application.yml 和 application.properties 的区别
|
10天前
|
消息中间件 NoSQL 安全
(转)Spring Boot加载 不同位置的 application.properties配置文件顺序规则
这篇文章介绍了Spring Boot加载配置文件的顺序规则,包括不同位置的application.properties文件的加载优先级,以及如何通过命令行参数或环境变量来指定配置文件的名称和位置。
|
JSON Java Maven
application.properties 文件和 application.yml 文件区别以及加载顺序
application.properties 文件和 application.yml 文件区别以及加载顺序
161 0
|
5月前
|
XML Java 数据格式
SpringBoot中yml与properties配置文件及bean取值赋值
SpringBoot中yml与properties配置文件及bean取值赋值
422 0
|
10月前
|
Java
application.properties模板+application.yml模板+pom模板+mapper.xml模板(springboot)
application.properties模板+application.yml模板+pom模板+mapper.xml模板(springboot)
70 0
|
11月前
|
Java
yml中list写法
yml中list写法
94 0
|
Java 容器
SpringBoot——聊聊application.properties和application.yml的写法规范及区别
SpringBoot——聊聊application.properties和application.yml的写法规范及区别
SpringBoot——聊聊application.properties和application.yml的写法规范及区别
|
Android开发
Checkstyle全局配置中style_template.xml创建方法
Checkstyle全局配置中style_template.xml创建方法
312 0
Checkstyle全局配置中style_template.xml创建方法
|
Java
SpringBoot获得application.yml中数据的几种方式
SpringBoot获得application.yml中数据的几种方式
146 0
|
Java Spring
application.properties或.yml文件
application.properties或.yml文件
117 0
application.properties或.yml文件