YML配置例の説明

6868 ワード

1、基本文法
k:(  )v
  • は一対のキーパッドのペアを表します。
  • は、スペースの字下げでレベル関係を制御する。左揃えの列データであれば、同じレベルの
  • です。
  • 属性と値は、大文字小文字に敏感な
  • である。
    server:
      port: 8081
      path: /hello
    
    2、値の書き方
    2.1字面量:普通の値(数字、文字列、ブール)
    k:v:字面は直接書きます。
    2.2文字列はデフォルトではシングルクォーテーションマークまたはダブルクォーテーションマークを付けません。
    ""::ダブルクォーテーション;文字列内の特殊文字は変換されません。特殊文字は自分が表示したい意味としてname:「mingzi 01 mingzi 02」に出力されます。mingzi 01改行mingzi 02」:単引用符;特殊文字に変換されます。特殊文字は最終的には普通の文字列データname:'mingzi 01 mingzi 02'で出力されます。mingzi 01 mingzi 02
    2.3オブジェクト、Map(属性と値):
    支店の書き方:
    friends:
      lastName: zhangsan
      age: 20
    
    行内の書き方:
    friends: {lastName: zhangsan,age: 18}
    
    2.4配列(List、Set):
    行列の要素を-値で表します。
    pets:
      - cat
      - dog
      - pig
    
    行内書き
    pets: [cat,dog,pig]
    
    3、プロファイル値注入
    設定ファイル
    config-attributes:
      value: 345                         #     
     valueArray: 1,2,3,4,5,6,7,8,9 #      valueList: #  list  - 13579  - 246810  valueMap: #  map  name: xiaoming  age: 20  sex: female  valueMapList: #  list  - name: aaa  age: 21  - name: bbb  age: 31 
    javaBean:
    @ConfigurationProperties(prefix = "config-attributes")
    @ToString
    public class Config { private String value; private String[] valueArray; private List<String> valueList; private HashMap<String, String> valueMap; private List<Map<String, String>> valueMapList; } 
    メインクラスにコメントを追加します。@ConfigrationPropties
    @SpringBootApplication
    @ConfigurationProperties
    public class Configtest1Application {
    	public static void main(String[] args) { SpringApplication.run(Configtest1Application.class, args); } } 
    <dependency>
    	<groupId>org.springframework.bootgroupId> <artifactId>spring-boot-configuration-processorartifactId> <optional>trueoptional> dependency> 
    1.直接値を取って設定パラメータを設定する
    定義
    stu:
      name: mcx
      age: 25
    
    値を取る
    @Value("${stu.name}")
    private String name;
    
    2.emlの構成をエンティティに割り当てる
    stu:
        name:mcx
        age: 25
        number: 9923 
    @Component
    @ConfigurationProperties(prefix = "stu")
    public class UserBean{
        private String name; private int age; private int number; } 
    3.マルチ環境プロファイル
    appication.yml
    spring:
      profiles:
        active: dev (           )
    
    appication-dev.yml:
    server:
      prot: 8080
    
    appication-test.yml:
    server:
      prot: 8081
    
    appication-prod.yml:
    server:
      prot: 8082