SpringBoot 配置

本文介绍了YAML作为数据格式,包括对象、键值对、数组和纯量的用法,以及Springboot中的参数引用和多环境配置(如profile)。重点讲解了配置文件加载顺序,包括Springboot内置和外部配置的加载机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

YAML:数据格式

  • 对象(map):键值对的集合。

    person:
      name: zhangsan
    # 行内写法
    person: {name: zhangsan}
    
  • 数组:一组按次序排列的值

    address:
      - beijing
      - shanghai
    # 行内写法
    address: [beijing,shanghai]
    
  • 纯量:单个的、不可再分的值

    msg1: 'hello \n world'  # 单引忽略转义字符
    msg2: "hello \n world"  # 双引识别转义字符
    

YAML:参数引用

name: lisi 

person:
  name: ${name} # 引用上边定义的name值

读取配置内容

1) @Value

2) Environment

3) @ConfigurationProperties

Profile

1) profile是用来完成不同环境下,配置动态切换功能的。
2) profile配置方式

  • 多profile文件方式:提供多个配置文件,每个代表一种环境。
    • application-dev.properties/yml 开发环境
    • application-test.properties/yml 测试环境
    • application-pro.properties/yml 生产环境
  • yml多文档方式:
  • 在yml中使用 — 分隔不同配置

3) profile激活方式

  • 配置文件: 再配置文件中配置:spring.profiles.active=dev
  • 虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev
  • 命令行参数:java –jar xxx.jar --spring.profiles.active=dev

内部配置加载顺序

Springboot程序启动时,会从以下位置加载配置文件:

  • file:./config/:当前项目下的/config目录下
  • file:./ :当前项目的根目录
  • classpath:/config/:classpath的/config目录
  • classpath:/ :classpath的根目录

加载顺序为上文的排列顺序,高优先级配置的属性会生效

外部配置加载顺序

通过官网查看外部属性加载顺序 https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.external-config

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值