首页 > 其他分享 >Spring Boot 中的配置体系,来了解一下

Spring Boot 中的配置体系,来了解一下

时间:2022-11-03 23:31:21浏览次数:45  
标签:Profile profile 配置文件 Spring 配置 Boot

Spring Boot 中的配置体系

在 Spring Boot 中,其核心设计理念是对配置信息的管理采用约定优于配置。 在这一理念下,则意味着开发人员所需要设置的配置信息数量比使用传统 Spring 框架时还大大减少。当然,今天我们关注的主要是如何理解并使用 Spring Boot 中的配置信息组织方式,这里就需要引出一个核心的概念,即 Profile。

配置文件与 Profile

Profile 本质上代表一种用于组织配置信息的维度,在不同场景下可以代表不同的含义。例如,如果 Profile 代表的是一种状态,我们可以使用 open、halfopen、close 等值来分别代表全开、半开和关闭等。再比如系统需要设置一系列的模板,每个模板中保存着一系列配置项,那么也可以针对这些模板分别创建 Profile。这里的状态或模版的定义完全由开发人员自主设计,我们可以根据需要自定义各种 Profile,这就是 Profile 的基本含义。

另一方面,为了达到集中化管理的目的,Spring Boot 对配置文件的命名也做了一定的约定,分别使用 label 和 profile 概念来指定配置信息的版本以及运行环境,其中 label 表示配置版本控制信息,而 profile 则用来指定该配置文件所对应的环境。在 Spring Boot 中,配置文件同时支持 .properties 和 .yml 两种文件格式,结合 label 和 profile 概念,如下所示的配置文件命名都是常见和合法的:

/{application}.yml
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties

Yaml 的语法demo

Yaml 的语法和其他高级语言类似,并且可以非常直观地表达各种列表、清单、标量等数据形态,特别适合用来表达或编辑数据结构和各种配置文件。在这里,我们指定了如下所示的数据源配置,这里使用了 . yml 文件

spring: 
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/account
    username: root
    password: 123456

.propertie语法demo

.propertie 配置文件,那么上述配置信息将表示为如下的形式:

spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/account
spring.datasource.username=root 
spring.datasource.password=123456

标签:Profile,profile,配置文件,Spring,配置,Boot
From: https://blog.51cto.com/u_15312559/5821380

相关文章

  • springboot多模块配置nginx
    1.后端有8088、8089两个端口不同的模块2.在nginx里配置地址。监听端口:9001,转发端口:8088、8099#usernobody;worker_processes1;#error_loglogs/error.log;#er......
  • 发起HTTP请求:Spring中RestTempalate设置请求头(转载)
    发起HTTP请求:Spring中RestTemplate设置与携带请求头(转载)发起HTTP请求:Spring中RestTemplate设置与携带请求头(转载)2021-01-08T16:56:48+08:00Rest设置请求头以及进一步......
  • org.springframework.core.env.PropertySource/PropertySources
    PropertySource是SpringBoot中键值对信息的顶层抽象,是一个抽象类。在逻辑上提供name属性和source属性,默认name用于唯一标识一个(复写equals方法,name相等即返回true),sourc......
  • 2021双十二组一套电脑配置的攻略
    2021双十二组一套电脑配置攻略前言昨天下午写了两篇文章:《​​XSX和PS5对标的电脑配置(2021年12月10日分析)​​》和《​​关于我家的五台主机的升级计划​​》,发现电脑配置中......
  • bootloader_kernel_根文件系统的编译运行
    bootloader_kernel_������������������������������编译运行bootloader_kernel_根文件系统bootloaderPOST:电脑上电首首先自检(POST=PowerOnSelfTest)。然后加载运行bootloader。MBR分区电脑加载bo......
  • mexopencv配置
    配置环境:Win10+VS2015+Opencv3.3+matlab2016a第一步:下载mexopencv链接:对应版本为opencv3.3.1对应下载地址:​​https://github.com/kyamagu/mexopencv/tree/v3.3.1​​......
  • 基于Springboot+Mybatisplus+Vue的在线购物平台管理系统
    基于Springboot+Mybatisplus+Vue的在线购物平台管理系统......
  • 手工安装配置Cloudera组件-Hadoop
    ClouderaManager安装经常出现错误,而且一点小错误,常常需要整个过程重来,不熟悉其内部过程,错误常常无从下手,所有决定yum安装手工配置一个测试集群,顺便尝试下牛叉的Impala。安......
  • 11-SSM_Spring_IoC与DI
    目录​​一,Spring介绍​​​​1,什么是框架​​​​2,spring是什么​​​​3,Spring的优势​​​​4,Spring的体系结构​​​​4.1核心容器​​​​4.2数据访问/集成​​​​4......
  • 11-SSM_Spring_AOP
    目录​​三,Spring核心AOP​​​​1,介绍​​​​2,代理&静态代理​​​​2.1 原有方式:核心业务和服务方法都编写在一起​​​​2.2 基于类的静态代理​​​​2.3 基于接口......