SpringBoot中application.yml配置文件的写法

 更新时间:2024年07月13日 10:24:01   作者:忆梦~留念  
这篇文章主要介绍了SpringBoot中application.yml配置文件的写法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1、基本介绍

(1)YAML 是 JSON 的超集,简洁而强大,是一种专门用来书写配置文件的语言,可以替代 application.properties。

(2)在创建一个 SpringBoot 项目时,引入的 spring-boot-starter-web 依赖间接地引入了 snakeyaml 依赖, snakeyaml 会实现对 YAML 配置的解析。

(3)YAML 的使用非常简单,利用缩进来表示层级关系,并且大小写敏感。

2、YAML 配置与 Properties 配置的比较

properties 写法

可以使用 @PropertySource 注解加载自定义的 Properties 配置文件,但无法加载自定义的 YAML 文件。YAML 支持列表的配置,而 Properties 不支持。

(2)以空格的缩进来控制层级关系;只要时左对齐的一列数据,都是同一个层级的。

(3)属性和值都是大小敏感

2.1、基本语法

  • (1)key: value。冒号与value之间必须有一个空格。
  • (2)大小写敏感。
  • (3)使用缩进表示层级关系。
  • (4)缩进不允许使用tab,只能使用空格。
  • (5)缩进的空格数不重要,只要相同层级的元素左对齐即可。
  • (6)# 后面跟注释内容
  • (7)字符串无须加引号。"“会进行转义。比如’\n’就输出\n,但”\n"则会输出换行。

3、值的写法

1)字面量:单个的、不可再分的值。date、boolean、string、number、null

值可以不加双引号或单引号,都默认表示字符串加双引号:支持转义字符

加单引号:不支持转义字符

2)对象:键值对的集合。map、hash、set、object

3)数组:一组按次序排列的值。array、list、queue

集合对象

整合

4、取值

方法1、@value("{}")取值

方法2、@ConfigurationProperties

这种方法可以取出yml中的数组

yml中配置数据库连接

编写jdbc实体类及getter setter 方法

注入

取数组

方法3、Environment

5、多环境配置

我们还可以通过在代码中指定使用哪种环境的配置

import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
 
@SpringBootApplication
public class TestApplication {
 
    public static void main(String[] args) {
        SpringApplicationBuilder builder = new SpringApplicationBuilder(TestApplication.class);
        builder.application().setAdditionalProfiles("dev");
        builder.run(args);
    }
}

我们可以把多个环境的配置写在一个文件里,可以使用符号

spring:
  profiles:
    # 使用开发环境的配置
    active: dev
---
# 开发环境配置
server:
  port: 8888
spring:
  profiles: dev
---
# 生产环境配置
server:
  port: 8888
spring:
  profiles: prod

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java http请求获取图片并返回文件流给前端的方法步骤

    java http请求获取图片并返回文件流给前端的方法步骤

    作为一名Java后端开发者,掌握如何从后端返回文件流至前端是基本技能之一,这篇文章主要介绍了java http请求获取图片并返回文件流给前端的方法步骤,需要的朋友可以参考下
    2024-09-09
  • Win11系统下载安装java的详细过程

    Win11系统下载安装java的详细过程

    这篇文章主要介绍了Win11如何下载安装java,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • java文件处理工具类详解

    java文件处理工具类详解

    这篇文章主要为大家详细介绍了java文件处理工具类的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • myBatis的mapper映射文件之批量处理方式

    myBatis的mapper映射文件之批量处理方式

    这篇文章主要介绍了myBatis的mapper映射文件之批量处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • Java数据结构之二叉搜索树详解

    Java数据结构之二叉搜索树详解

    二叉搜索树作为一个经典的数据结构,具有链表的快速插入与删除的特点,同时查询效率也很优秀,所以应用十分广泛。本文将详细讲讲二叉搜索树的原理与实现,需要的可以参考一下
    2022-06-06
  • Java中各种集合判空方法总结

    Java中各种集合判空方法总结

    最近接触集合比较多,经常对于集合是否为空做判断,下面这篇文章主要给大家介绍了关于Java中各种集合判空方法总结的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • Java的JSON转换库GSON的基本使用方法示例

    Java的JSON转换库GSON的基本使用方法示例

    GSON是Google制作的一个可以让Java对象与JSON互相转换的类库,下面我们就来看一下Java的JSON转换库GSON的基本使用方法示例:
    2016-06-06
  • 构建SpringBoot+MyBatis+Freemarker的项目详解

    构建SpringBoot+MyBatis+Freemarker的项目详解

    在本篇内容里小编给大家整理的是关于构建SpringBoot+MyBatis+Freemarker的项目的具体步骤以及实例代码,需要的朋友们参考下。
    2019-06-06
  • MyBatis增删改查快速上手

    MyBatis增删改查快速上手

    这篇文章给大家讲解的是MyBatis 这门技术的 CURD (增删改查) ,非常的详细与实用,有需要的小伙伴可以参考下
    2020-02-02
  • 解决HttpServletResponse和HttpServletRequest取值的2个坑

    解决HttpServletResponse和HttpServletRequest取值的2个坑

    这篇文章主要介绍了解决HttpServletResponse和HttpServletRequest取值的2个坑问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12

最新评论