YAML設定方法の概要

目次

1 文法

2 構成情報

2.1 リテラル (通常の値: 数値、文字列、ブール値)

2.2 オブジェクト

2.3 地図

2.4 リスト

2.5 配列

3 まとめ


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> マップ;

}

おすすめ

転載: blog.csdn.net/weixin_46505978/article/details/129918580