目次
1 文法
- k: (スペース) v: キーと値のペアを表します (スペースが必要です)
- 大文字と小文字を区別
- インデントを使用して階層関係を示す
- インデントにはタブは使用できません。スペースのみが使用できます。
- 同じレベルの要素が左揃えである限り、インデントのスペースの数は関係ありません。
- # はコメントを表します
- 文字列を引用符で囲む必要はありません。'' 一重引用符または "" 二重引用符が追加された場合、内容はエスケープされる [一重引用符エスケープ] またはエスケープされない [二重引用符はエスケープされません]
2 構成情報
2.1 リテラル(通常の値: 数値、文字列、ブール値)
書き込み: k: v
デフォルトでは、文字列を一重引用符または二重引用符で囲む必要はありません。
"": 二重引用符。文字列内の特殊文字はエスケープされません。特殊文字は、表現したい意味として使用されます。
名前: "zhangsan \n lisi": 出力; zhangsan 改行 lisi
'': 一重引用符; 特殊文字はエスケープされ、最終的には単なる通常の文字列データになります。
名前: 'zhangsan \n lisi': 出力; zhangsan \n lisi
server:
port: 8080
servlet:
context-path: /
入手方法:
@Value("${server.port}")
private Integer port;
2.2 オブジェクト
書き方:k:v、次の行にオブジェクトの属性と値の関係を書きます;インデントに注意してください
example:
#对象行内写法
school: '{"name": "北京市第一中学","location": "北京市"}'
school2:
name: 北京市第一中学
location: 北京市
@Data
@Component
@ConfigurationProperties(prefix = "example")
public class TestConfig2 {
private School school;
private School school2;
}
2.3 地図
書き方:k:v、次の行にオブジェクトの属性と値の関係を書きます;インデントに注意してください
- インライン書き込みとその入手方法
map:
example: '{"key1": "value1", "key2": "value2"}'
@Component
public class TestConfig {
@Value("#{${map.example}}")
private Map<String, String> map;
}
- オフラインライティングとその入手方法
example:
map:
key1: value1
key2: value2
@Data
@Component
@ConfigurationProperties(prefix = "example")
public class TestConfig2 {
private Map<String, String> map;
}
2.4 リスト
- 概要の書き方(配列内の要素を表現するには - 値を使用)とその取得方法
example:
list:
- list1
- list2
- list3
@Data
@Component
@ConfigurationProperties(prefix = "example")
public class TestConfig2 {
private List<String> list;
}
- インライン書き込みとその入手方法
list:
# 行内写法
example: list1,list2,list3
@Component
public class TestConfig {
// @Value("#{'${list.example2}'.empty ? null : '${list.example2}'.split(',')}")
@Value("#{'${list.example}'.split(',')}")
private List<String> list;
}
2.5 配列
array:
example: array1,array2,array3
@Component
public class TestConfig {
@Value("${array.example}")
private String[] array;
}
3 まとめ
タイプ |
設定方法 |
値のメソッド |
リテラル |
キー: 値 |
@Value("${key}") |
物体 |
例: オブジェクト: '{"key1": "value1","key2": "value2"}' |
@ConfigurationProperties(prefix = "例") パブリック クラス TestConfig2 { プライベートオブジェクトオブジェクト。 } |
例: 物体: キー1: 値1 キー2: 値2 |
||
配列 |
例: 配列: 配列1、配列2、配列3 |
@Value("${example.array}") |
リスト |
例: リスト: - シート 1 - リスト2 -リスト3 |
@ConfigurationProperties(prefix = "例") パブリック クラス TestConfig2 { プライベート List<String> リスト; } |
例: リスト: リスト1、リスト2、リスト3 |
@Value("#{'${list.example2}'.empty ? null : '${list.example2}'.split(',')}") @Value("#{'${list.example}'.split(',')}") |
|
地図 |
地図: 例: '{"key1": "value1", "key2": "value2"}' |
@Value("#{${map.example}}") |
例: 地図: キー1: 値1 キー2: 値2 |
@ConfigurationProperties(prefix = "例") パブリック クラス TestConfig2 { プライベート Map<String, String> マップ; } |