2 -【 SpringBoot 配置方式 】- 4 application.yml

1 设计目的

SpringBoot 虽然干掉了 XML ,但未做到零配置,它体现出了一种 约定优于配置 ,也称作按约定编程,是一种软件设计范式 。

一般情况下默认的配置足够满足日常开发所需,但在特殊的情况下,我们往往需要用到 自定义属性配置自定义文件配置多环境配置外部命令引导 等一系列功能。这些只需要遵循 SpringBoot 的规则配置即可 。

2 常用配置举例

2.1 在application.properties 中修改:

#server.port = # 修改端口号       默认为8080
#server.address = # bind to a specific NIC
#server.session-timeout= # session timeout in seconds
#the context path, defaults to '/'
#server.servlet.context-path = /springboot # 修改context-path     默认为  /
#server.servlet-path= # the servlet path, defaults to '/'
#server.tomcat.access-log-pattern= # log pattern of the access log
#server.tomcat.access-log-enabled=false # is access logging enabled
#server.tomcat.protocol-header=x-forwarded-proto # ssl forward headers
#server.tomcat.remote-ip-header=x-forwarded-for
#server.tomcat.basedir=/tmp # base dir (usually not needed, defaults to tmp)
#server.tomcat.background-processor-delay=30; # in seconds
#server.tomcat.max-threads = 0 # number of threads in protocol handler
#server.tomcat.uri-encoding = UTF-8 # character encoding to use for URL decoding

2.2 推荐使用:application.yml

server: # 修改server配置:
  port: 8888 # 修改端口号
  servlet:
    context-path: /springboot # 修改context-path ,默认为  /

上面的不用重复写,但是 冒号后面必须有空格

3 配置文件

  • SpringBoot 使用一个全局的配置文件
    application.properties
    application.yml

  • 配置文件放在 src/main/resources 目录或者类路径 /config

  • .yml 是 YAML(YAML Ain’t Markup Language)语言的文件,以数据为中心,比 jsonxml 等更适合做配置文件

  • 全局配置文件的可以对一些默认配置值进行修改

YAML:配置例子

server:
  port: 8081

XML:配置例子

<server>
    <port>8081</port>
</server>

配置文件的作用:修改 SpringBoot 自动配置的默认值;SpringBoot 在底层都给我们自动配置好。

4 YAML 语法

4.1 YAML 基本语法

  1. 使用缩进表示层级关系
  2. 缩进时不允许使用 Tab 键,只允许使用 空格
  3. 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  4. 大小写敏感

4.2 YAML 支持的三种数据结构

  1. 对象:键值对的集合
  2. 数组:一组按次序排列的值
  3. 字面量:单个的、不可再分的值

4.3 YAML常用写法

  • 对象(Map)
    • 对象的一组键值对,使用冒号分隔。如:username: admin
    • 冒号后面跟空格来分开键值
    • {k: v} 是行内写法
# 方式一
maps:
  k1: v1
  k2: v2

# 方式二
maps: {k1: v1,k2: v2}
  • 数组(List、Set)
    • 一组连词线(-)开头的行,构成一个数组,[]为行内写法
    • 数组,对象可以组合使用
# 方式一
lists:
  - yang1
  - yang2
  - yang3

# 方式二
lists: [yang1,yang2,yang3]
  • 复合结构:以上写法的任意组合都是可以

  • 字面量

    • 数字、字符串、布尔、日期
    • 字符串
      • 默认不使用引号
      • 可以使用单引号或者双引号,单引号会转义特殊字符
      • 字符串可以写成多行,从第二行开始,必须有一个单空格缩进。换行符会被转为空格
  • 文档

    • 多个文档用 - - - 隔开

注意: Spring Boot 使用 snakeyaml 解析 yml 文件; https://bitbucket.org/asomov/snakeyaml/wiki/Documentation#markdown-header-yamlsyntax 参考语法

注意:设置 IDEA 的文件的编码为 UTF-8

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不知所起 一往而深

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值