基于springBoot配置文件properties和yml中數(shù)組的寫法
springBoot配置文件properties和yml數(shù)組寫法
這里介紹一下springBoot中的兩種文件配置方式中數(shù)組的使用,也就是集合。
以下是我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是集合的名字,要和配置表中的信息一致。這樣基本就可以了。
.properties和.yml的寫法區(qū)別
例如: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
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
springboot 如何修改默認端口及application.properties常用配置
這篇文章主要介紹了springboot 如何修改默認端口及application.properties常用配置操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
劍指Offer之Java算法習題精講鏈表與數(shù)組專項訓練
跟著思路走,之后從簡單題入手,反復去看,做過之后可能會忘記,之后再做一次,記不住就反復做,反復尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質的變化2022-03-03
Spring Cloud Eureka服務治理的實現(xiàn)
服務治理是微服務框架中最為核心和基礎的模塊,它主要是用來實現(xiàn)各個微服務實例的自動化注冊與發(fā)現(xiàn)。這篇文章主要介紹了Spring Cloud Eureka服務治理的實現(xiàn),感興趣的小伙伴們可以參考一下2018-06-06
Spring中的@Autowired、@Qualifier和@Primary注解詳解
這篇文章主要介紹了Spring中的@Autowired、@Qualifier和@Primary注解詳解,@Autowired?注解,可以對類成員變量、方法和構造函數(shù)進行標注,完成自動裝配的工作,@Autowired?是默認根據(jù)?byType?進行自動裝配的,需要的朋友可以參考下2023-11-11

