信息
操作系统
Linux
开发语言
Python
开源协议
未知
YML
YML (Why a Markup Language?!) is an easy language to compile into XML. YSLT is an easy language for code generation, automating your software development tasks.
收起全文
精华内容
下载资源
问答
  • YML简介

    万次阅读 多人点赞 2019-09-08 23:41:15
    在接触springboot的时候遇到了一种特殊的配置文件 .yml,本文对yml作简单介绍,快速入手yml。 一、YML是什么 YAML (YAML Aint Markup Language)是一种标记语言,通常以.yml或者.yaml为后缀的文件,是一种直观的能够...

    在接触springboot的时候遇到了一种特殊的配置文件 .yml,本文对yml作简单介绍,快速入手yml。

    一、YML是什么

    YAML (YAML Aint Markup Language)是一种标记语言,通常以.yml或者.yaml为后缀的文件,是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入,一种专门用来写配置文件的语言。可用于如: Java,C/C++, Ruby, Python, Perl, C#, PHP等。

    二、YML的优点

    1. YAML易于人们阅读。
    2. YAML数据在编程语言之间是可移植的。
    3. YAML匹配敏捷语言的本机数据结构。
    4. YAML具有一致的模型来支持通用工具。
    5. YAML支持单程处理。
    6. YAML具有表现力和可扩展性。
    7. YAML易于实现和使用。

    三、YML语法

    1.约定

    • k: v 表示键值对关系,冒号后面必须有一个空格
    • 使用空格的缩进表示层级关系,空格数目不重要,只要是左对齐的一列数据,都是同一个层级的
    • 大小写敏感
    • 缩进时不允许使用Tab键,只允许使用空格。
    • 松散表示,Java中对于驼峰命名法,可用原名或使用-代替驼峰,如java中的lastName属性,在yml中使用lastName或 last-name都可正确映射。

    2.键值关系

    (以Java语言为例,其它语言类似)对于键与值主要是看能否表示以下内容。普通的值(数字、字符串、布尔)、日期、对象、数组、集合等。

    1) 普通值(字面量)

    k: v:字面量直接写;

    字符串默认不用加上单引号或者双绰号;

    “”: 双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思

    name: “zhangsan \n lisi”:输出;zhangsan 换行 lisi

    ‘’:单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据

    name1: zhangsan
    name2: 'zhangsan \n lisi'
    name3: "zhangsan \n lisi"
    age: 18
    flag: true
    

    2)日期

    date: 2019/01/01
    

    3)对象(属性和值)、Map(键值对)

    在下一行来写对象的属性和值的关系,注意缩进

    people:
        name: zhangsan
        age: 20
    

    行内写法:

    people: {name:zhangsan,age: 20}
    

    4)数组、list、set

    用- 值表示数组中的一个元素

    pets:
        - dog
        - pig
        - cat
    

    行内写法

    pets: [dog,pig,cat]
    

    5)数组对象、list对象、set对象

    peoples:
        - name: zhangsan
          age: 22
        - name: lisi
          age: 20
        - {name: wangwu,age: 18}
    

    6)Java代码示例

    Java代码(省略get,set方法)

    public class Person {
    
        private String lastName;
        private Integer age;
        private Boolean boss;
    
        private Date birth;
        private Map<String,Object> maps;
        private List<Dog> lists;
        private Dog dog;
        private String[] arr;public class Dog {
        private String name;
        private Integer age;
    }
    

    对应的yml

    person:
      boss: false
      maps:
        k1: v1
        k2: 14
      lists:
        - name: d1
          age: 2
        - name: d2
          age: 3
        - {name: d3,age: 4}
      birth: 2017/12/15
      dog:
        name: p_dog
        age: 15
      age: 13
      last-name: 张三
      arr: [s1,s2,s3]
    

    3.文档块

    对于测试环境,预生产环境,生产环境可以使用不同的配置,如果只想写到一个文件中,yml与是支持的,每个块用----隔开

    server:
      port: 8081
    spring:
      profiles:
        active: prod #激活对应的文档块
    
    ---
    server:
      port: 8083
    spring:
      profiles: dev #指定属于哪个环境
    
    
    ---
    
    server:
      port: 8084
    spring:
      profiles: prod  #指定属于哪个环境
    
    展开全文
  • 关于yml的介绍,java对yml的解析,yml的规范的详解。
  • kube-flannel.yml.yml

    2020-05-12 14:54:36
    https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml
  • application.yml

    2021-08-03 22:54:32
    application.ymlapplication.yml
  • application.yml与bootstrap.yml的区别

    万次阅读 多人点赞 2019-08-22 08:52:37
    Spring Boot 默认支持 properties(.properties) 和 YAML(.yml .yaml ) 两种格式的配置文件,yml 和 properties 文件都属于配置文件,功能一样。 Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上...

    Spring Boot 默认支持 properties(.properties) 和 YAML(.yml .yaml ) 两种格式的配置文件,yml 和 properties 文件都属于配置文件,功能一样。

    Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上下文,一种是 bootstrap,另外一种是 application,下面列举这两种配置文件的区别

    加载顺序

    若application.yml 和bootstrap.yml 在同一目录下:bootstrap.yml 先加载 application.yml后加载

    bootstrap.yml 用于应用程序上下文的引导阶段。bootstrap.yml 由父Spring ApplicationContext加载。

    配置区别

    bootstrap.yml 和 application.yml 都可以用来配置参数。

    bootstrap.yml 用来程序引导时执行,应用于更加早期配置信息读取。可以理解成系统级别的一些参数配置,这些参数一般是不会变动的。一旦bootStrap.yml 被加载,则内容不会被覆盖。

    application.yml 可以用来定义应用级别的, 应用程序特有配置信息,可以用来配置后续各个模块中需使用的公共参数等。

    属性覆盖问题

    启动上下文时,Spring Cloud 会创建一个 Bootstrap Context,作为 Spring 应用的 Application Context 的父上下文。

    初始化的时候,Bootstrap Context 负责从外部源加载配置属性并解析配置。这两个上下文共享一个从外部获取的 Environment。Bootstrap 属性有高优先级,默认情况下,它们不会被本地配置覆盖

    也就是说如果加载的 application.yml 的内容标签与 bootstrap 的标签一致,application 也不会覆盖 bootstrap,而 application.yml 里面的内容可以动态替换。

    bootstrap.yml典型的应用场景

    • 当使用 Spring Cloud Config Server 配置中心时,这时需要在 bootstrap.yml 配置文件中指定 spring.application.name 和 spring.cloud.config.server.git.uri,添加连接到配置中心的配置属性来加载外部配置中心的配置信息
    • 一些固定的不能被覆盖的属性
    • 一些加密/解密的场景
    展开全文
  • SpringBoot .yml

    2019-03-08 15:35:29
    application.yml
  • 其实yml和properties文件是一样的原理,且一个项目上要么yml或者properties,二选一的存在。这篇文章给大家介绍了Spring Boot 中application.yml与bootstrap.yml的区别,感兴趣的朋友一起看看吧
  • eclispe yml工具

    2020-10-16 09:55:01
    eclispe yml工具
  • zabbix.yml

    2021-02-02 10:19:03
    docker-compose部署zabbix yml文件
  • 这是一个允许您通过CLI对yml文件进行排序的工具。 该工具基本上是围绕一个小包装。 安装 npm install -g yml-sorter 用法 Usage: yml-sorter [options] Options: --input, -i The yml file which needs to be ...
  • server.yml

    2020-01-02 09:54:34
    server.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.ymlserver.yml
  • properties-yml.jar

    2021-08-11 14:58:38
    yml properties相互转换 工具 java小工具 命令:java -jar properties-yml.jar application.properties 生成application.properties 命令:java -jar properties-yml.jar application.yml 生成application.yml
  • 关于springcloud中配置文件boostrap.yml和application.yml 看到很多小伙伴一开始不知道boostrap.yml和application.yml文件的作用 properties和yml原理都差不多,不过yml文件层级简洁,关系清楚,推荐yml配置文件 ...

    关于springcloud中配置文件boostrap.yml和application.yml

    看到很多小伙伴一开始不知道boostrap.yml和application.yml文件的作用
    properties和yml原理都差不多,不过yml文件层级简洁,关系清楚,推荐yml配置文件

    • 如果你在clone下来的项目里resources目录下只看到boostrap.yml配置文件,不妨去该项目config目录下面找找application.yml配置文件

    加载顺序

    我们可以看到boostrap.yml配置文件中通常配置很少的东西,而application.yml中则配置比较详细的内容

    • boostrap.yml用于应用程序上下文的引导阶段
    • application.yml应用于具体的应用

    boostrap.yml是由一个父级的Spring ApplicationContext加载的,这个Spring ApplicationContext是先加载的,在加载application.yml之前

    • 结论很明显

    boostrap.yml文件先加载 application.yml文件后加载

    两者区别

    • bootstrap.yml 和application.yml 都可以用来配置参数
    • bootstrap.yml 可以理解成系统级别的一些参数配置,这些参数一般是不会变动的
    • application.yml 可以用来定义应用级别的,如果搭配 spring-cloud-config 使用 application.yml 里面定义的文件可以实现动态替换。

    使用Spring Cloud Config Server时,应在 bootstrap.yml 中指定:

    1. spring.application.name
    2. spring.cloud.config.server.git.uri
    3. 一些加密/解密信息
    • 具体应用如
    server:
      port: 8088
    
    spring:
      application:
        name: manager-server
      cloud:
        config:
          discovery:
            enabled: true
            service-id: config-server
          profile: prod
    
    eureka:
      client:
        serviceUrl:
          defaultZone: ${EUREKA_SERVER_ADDRESS}
    
    • application.yml配置文件内容就不贴出来了,就是一些数据源,连接池,redis…配置信息

    • 当时用springcloud时,会去config server加载配置数据,为了获取这些配置数据,需要一些引导配置,因此把config server信息放在boostrap.yml中用来加载真正的配置
    展开全文
  • springboot bootstrap.yml和application.yml bootstrap.yml在application.yml之前加载,一般在springcloud使用配置中心的时候使用; bootstrap.yml同名属性会被application.yml覆盖; application.yml在...

    springboot bootstrap.yml和application.yml

     

    bootstrap.yml在application.yml之前加载,一般在spring cloud使用配置中心时使用;

    bootstrap.yml同名属性会被application.yml覆盖;

    application.yml在application.properties之前加载,同名属性会被application.properties覆盖

     

     

    **************************

    示例

     

    导入jar包,使bootstrap.yml得配置生效

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-context</artifactId>
                <version>2.2.0.RELEASE</version>
            </dependency>
    

     

    ***************************

    bootstrap.yml

    server:
      port: 8081

     

    启动应用,控制台输出

    2019-12-20 11:03:50.672  INFO 20380 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
    2019-12-20 11:03:50.676  INFO 20380 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1370 ms
    2019-12-20 11:03:50.936  INFO 20380 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
    2019-12-20 11:03:51.289  INFO 20380 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8081 (http) with context path ''
    2019-12-20 11:03:51.296  INFO 20380 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 3.264 seconds (JVM running for 6.268)
    

    应用监听端口为8081,bootstrap.yml生效

     

     

    ****************************

    添加application.yml

     

    server:
      port: 8082

     

    启动应用,控制台输出

    2019-12-20 11:07:33.062  INFO 22148 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
    2019-12-20 11:07:33.062  INFO 22148 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 739 ms
    2019-12-20 11:07:33.179  INFO 22148 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
    2019-12-20 11:07:33.374  INFO 22148 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8082 (http) with context path ''
    2019-12-20 11:07:33.377  INFO 22148 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 2.011 seconds (JVM running for 3.696)
    

    应用监听端口为8082,application.yml覆盖bootstrap.yml的端口配置

     

     

    ******************************

    添加application.properties

     

    server.port=8083

     

    启动应用,控制台输出

    2019-12-20 11:11:04.004  INFO 608 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
    2019-12-20 11:11:04.004  INFO 608 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 844 ms
    2019-12-20 11:11:04.149  INFO 608 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
    2019-12-20 11:11:04.316  INFO 608 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8083 (http) with context path ''
    2019-12-20 11:11:04.320  INFO 608 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 2.018 seconds (JVM running for 3.692)
    

    应用监听端口为8083,application.yml覆盖前面的配置信息

     

     

    展开全文
  • kube-flannel-rbac.yml # Create the clusterrole and clusterrolebinding: # $ kubectl create -f kube-flannel-rbac.yml # Create the pod using the same namespace used by the flannel serviceaccount: # $ ...
  • yml_comparer YML比较器 这是Java实现YML提供块的比较 用法: yml_comparer <old> 结果由<OfferId><r><n><m><p> ,其中 OfferId是要约的ID r表示要约已在删除的信号 在添加了n要约的信号 在修改了要约的m信号 p...
  • environment.yml

    2020-07-02 15:54:35
    geopandas的conda环境配置文件,通过 conda env create -f environment.yml
  • 包-yml 这是和项目的工作。 为了对 npm 的包文件使用yml而不是json 。 重要的! 这将删除您现有的.json文件。 使用风险自负! 检查源代码,帮我把它做到最好。 安装 npm install package-yml --global npm config...
  • YML格式

    千次阅读 2019-07-11 16:31:50
    文章目录yml格式数据结构语法 yml格式 与json相比更加简洁,用于配置文件。 数据结构 对象与数组 对象用名称/值对来表示, person:man people:{sex:man,age:18} 等价于如下json {"person":"man"} {...
  • cellpose environment.yml

    2020-12-31 10:29:45
    environment.yml文件下载
  • 递归地将.env.yml和.env.yml.d/*.yml合并到进程环境中。 支持 YAML 锚点和别名,这是对配置文件直接 JSON 的巨大胜利。 文件:.env.yml 环境配置文件。 如果此处未提及,则不会包括在内。 目录:.env.yml.d/ 配置...
  • kube-flannel.yml

    2021-06-06 17:51:51
    kube-flannel.yml kube-flannel.yml kube-flannel.yml 最新版
  • 如果您喜欢在Ruby项目中使用YML文件,并且倾向于创建.example.yml文件来忽略项目的实际设置,以防止它们进入版本控制,这可能会派上用场。 它只是将所有这些讨厌的示例文件复制到正常的YML版本中。 用法 cd ~ /...
  • 合并-yml 将多个YML文件合并到一个文件中,并替换找到的任何环境变量 (c)版权所有2013 Jonathan Cobb。 可以在Apache许可版本2下获得此代码: : 建造 mvn -P uberjar package 需要“ maven”构建自动化工具。 ...
  • yml插件.zip

    2019-10-26 09:40:05
    application.yml可以通过YEdit YAML Editor打开高亮显示,还可以进行格式化,有些eclipse中没有YEdit YAML Editor编辑器。只需要安装一下这个插件即可。
  • yml配置文件使用

    2018-09-07 18:47:52
    Spring Boot中yml配置文件的使用一些规则,一些注意点等等~

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 272,454
精华内容 108,981
关键字:

yml