zoukankan      html  css  js  c++  java
  • yaml配置注入

    application.properties | 语法结构 key=value

    application.yml 语法结构 key:空格 value

    配置文件是为了修改spring boot自动配置的默认值

    例如: 修改Tomcat默认启动端口 

    server.port=8081

    YAML 是 "YAML Ain't a Markup Language"(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)。

    yaml语法格式

    person:
      name: wangye${random.int}
      age: 23
      happy: false
      birth: 2021/2/23
      map: {k1: v1,k2: v2}
      list:
        - code
        - music
        - swimming
      dog:
        name: 大黄
        age: 90

    基本语法

    • 大小写敏感
    • 使用缩进表示层级关系
    • 缩进不允许使用tab,只允许空格
    • 缩进的空格数不重要,只要相同层级的元素左对齐即可
    • '#'表示注释

    注入配置文件

    yaml文件可以给我们的实体类直接注入匹配值

    1、在springboot项目中的resources目录下新建一个文件 application.yml

    2、编写一个实体类 Person;

    @Component //注册bean到容器中
    public class Person {
        private String name;
        private Integer age;
        private Boolean happy;
        private Date birth;
        private Map<String,Object> maps;
        private List<Object> lists;
        private Dog dog;
        
        //有参无参构造、get、set方法、toString()方法  
    }

    3、我们来使用yaml配置的方式进行注入

    person:
      name: wangye${random.int}
      age: 23
      happy: false
      birth: 2021/2/23
      map: {k1: v1,k2: v2}
      list:
        - code
        - music
        - swimming
      dog:
        name: 大黄
        age: 90

    4、注入到我们的类中!

    /*
    @ConfigurationProperties作用:
    将配置文件中配置的每一个属性的值,映射到这个组件中;
    告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定
    参数 prefix = “person” : 将配置文件中的person下面的所有属性一一对应
    */
    @Component //注册bean
    @ConfigurationProperties(prefix = "person")
    public class Person {
        private String name;
        private Integer age;
        private Boolean happy;
        private Date birth;
        private Map<String,Object> maps;
        private List<Object> lists;
        private Dog dog;
    }

    @PropertySource :加载指定的配置文件;

    @configurationProperties:默认从全局配置文件中获取值;

     

  • 相关阅读:
    [知乎]20世纪初的军阀.
    Clover的简单使用
    影像工作站的数据库安装错误之Win7系统下pg服务无法启动
    屏蔽各大视频网站播放前15秒30秒广告
    电脑双显示器主分屏,巨鲨显示器不亮
    move 和 CopyMemory的区别
    The CompilerVersion constant identifies the internal version number of the Delphi compiler.
    Firemonkey的旁门左道[六]
    电够动力足——认识主板上的CPU供电模块
    delphi 枚举类型
  • 原文地址:https://www.cnblogs.com/IanIan/p/14437863.html
Copyright © 2011-2022 走看看