springboot环境配置,yml格式,不同环境切换

article/2025/1/16 12:54:29

配置文件properties.yml格式

注意:

  • 大小写敏感
  • 数据前要有空格
  • 数据格式:对象、数组、纯量、数据格式引用${}
# 加载顺序 yml > yaml > properties
# 覆盖顺序:properties > yaml > yml,即properties中内容与其他冲突时properties有限生效。
server:port: 8088# 对象
person:uName: 张三age: 20#对象单行格式
person2: { uName: 张三, age: 20 }# 数组格式
addr:- 北京- 上海
#数组单行格式
addr2: [ 北京, 上海 ]#纯量
msg: 'hello \n word' # 不会转译字符,会原样输出
msg1: "hello \n word" # 会识别转译字符#参数引用 ${}
gender: test
person3:uName: 张三gender: ${gender}

获取yml中的值

使用@Value 获取单个值
使用@Environment 获取全部
在类中直接注入@ConfigurationProperties(prefix = “person”)

@Value方式

    //    从yml中获取相应的值
//    纯量@Value("${msg}")String msg;@Value("${msg1}")String msg1;
//    对象@Value("${person.uName}")String uName;@Value("${person.age}")int age;
//    数组@Value("${addr[0]}")String addr1;

@Environment方式

@AutowiredEnvironment env;
// 获取值,默认返回String类型
System.out.println(env.getProperty("msg"));
String age = env.getProperty("person2.age");
System.out.println(age);
System.out.println(env.getProperty("person2.age"));

在类中直接注入@ConfigurationProperties(prefix = “person”)

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;@ConfigurationProperties(prefix = "person")
@Component
public class Person {private String uName;private String age;String[] addr;public String getuName() {return uName;}public void setuName(String uName) {this.uName = uName;}public String getAge() {return age;}public void setAge(String age) {this.age = age;}public String[] getAddr() {return addr;}public void setAddr(String[] addr) {this.addr = addr;}@Overridepublic String toString() {return "Person{" +"uName='" + uName + '\'' +", age='" + age + '\'' +'}';}
}

获取时候直接注入Person类就可以获取相应的值

 @AutowiredPerson person;

环境配置(指定开发或者测试环境)

profile用于不同环境切换
激活方式:

  • 文件中声明 spring.profiles.active=pro
  • 虚拟机参数 -Dspring.profiles.active=dev
  • 命令行参数 --spring.profiles.active=dev

使用properties时

可设置多个properties文件,在主文件中指明使用环境
在这里插入图片描述

#指定配置环境
spring.profiles.active=pro

使用yml时:

  • 可使用 — 隔离多个环境,在最后指明激活环境
  • 也可以在此处定义指明,也可以在运行时使用命令 --spring.profiles.active=dev指明使用环境
---
#识别顺序优先级 properties > yml > yaml
myconfig:localInterface: http://localhost:8089/autoPunchInterface: http://localhost:8088/server:port: 8081#设置开放环境
spring:config:activate:on-profile: dev
---myConfig:localInterface: http://localhost:8089/autoPunchInterface: http://localhost:8088/server:port: 8082#设置生产环境
spring:config:activate:on-profile: pro
---#可以在此处定义指明,也可以在运行时使用命令 --spring.profiles.active=dev指明使用环境
#激活环境
spring:profiles:active: pro

http://chatgpt.dhexx.cn/article/pWwIXwiE.shtml

相关文章

快速替换jar包中.class、.html、.yml格式的文件

快速替换jar包中.class、.html、.yml格式的文件 文章目录 快速替换jar包中.class、.html、.yml格式的文件背景下载反编译软件JD-GUI使用 jd-gui 打开web.jar 文件找到对应的jar包中需要修改的class 文件将代码复制到新的java文件,并修改相应的内容解压web.jar 文件使…

YML简介

在接触springboot的时候遇到了一种特殊的配置文件 .yml,本文对yml作简单介绍,快速入手yml。 一、YML是什么 YAML (YAML Aint a Markup Language)YAML不是一种标记语言,通常以.yml为后缀的文件,是一种直观的能够被电脑识别的数据…

YML文件格式学习

最近的SpringBoot项目里用到yml文件作为配置文件,简单的了解下,它的基本语法如下 大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格。缩进的空格数目不重要,只要相同层级的元素左侧对齐即可# 表示…

Spring boot yml的格式

spring boot 配置文件的格式分为两种 第一种就是: #spring.datasource.urljdbc:sqlite:D:/demo/springboot-sqlite-master/src/main/db/myDb spring.datasource.urljdbc:sqlite:D:/demo/springboot-sqlite-master/src/main/db/myDb spring.datasource.usernameroo…

【微服务】使用yml格式进行nacos拓展配置

文章目录 前言1、properties格式配置2、yml格式配置 前言 在学习过程中接触到了在bootstrap.yml文件中对nacos的拓展配置,对一方面目前还不算是太熟悉,因此便打算在网上进行学习。 但是经过一系列搜索,发现网上众多都是使用的properties充当…

.json格式转为.yml格式

.json格式转为.yml格式 在跑ssd-6d代码时,出现了一个严重的问题,代码中用到的数据集里的文件都是.yml文件(eg:camera.yml)但是在下载的数据集(teijani)中也没有相应的.yml文件,数据及里提供的都…

Java Yml格式转换为Properties

Yml格式文件转换为Properties格式 问题引入转换代码代码解读 问题引入 使用在线的yml转换properties, 发现有属性内容漏了,网站地址https://tooltt.com/yaml2properties/。 于是自己动手写个转换工具类,自测过多个 yml 文件,目前没发现遗漏的…

Spring Boot配置文件yml格式详解

在Spring Boot项目中配置文件格式可以是.properties格式,也可以是yml格式,但是一般使用yml格式的比较多,yml格式都有什么语法?yml格式怎么配置?本文将详细的讲解yml的具体使用。 简介 YAML 是一种简洁的非标记语言(YAML Ain’t Markup Language),YAML以数据为中心,使用空…

连线图

电子发声单元接线图 点阵单元接线图 点阵实验接线图 连线设计图

五类直连线做法

五类直连线两头线序相同,都是 白橙、橙、白绿、蓝、白蓝、绿、白棕、棕 如下图所示,将水晶头卡扣朝下,插入网线后用网线钳夹紧即可。

连连看(三)

Python3 实现QQ游戏连连看游戏辅助 连连看(零)—— 前记连连看(一)—— 你看,这是截图啊连连看(二)—— 哦吼,PIL CV2 Numpy 假图像识别构建矩阵连连看(三&#xff09…

连点成线

做技术和做产品都需要沉心深研。做技术侧重对物性的理解,突破原有限制,创造新的领域; 做产品侧重对人性的理解,善于使用技术,创造简单易用的服务。技术需要落地于产品,展示其威力; 产品需要新技术的引擎&am…

图解计算机基础网站上线了

大家好,我是小林。 就在昨天 4 点半,我收到了工信部的短信,通知了我的域名备案完成了! 足足等待了一周,域名终于备案完了,久等了各位!心急的小伙伴,可以到末尾见直接看网站域名。 …

股票K线几种线型基本规则

1.经典蜡烛图&#xff1a; K线颜色&#xff1a; 如果收盘价格 > 开盘价格则是涨色&#xff1b; 如果收盘价格 < 开盘价格则是跌色&#xff1b; 如果收盘价格 开盘价格&#xff0c;则判断收盘价格 > 昨收价格是涨色反之是跌色。 K线形状&#xff1a; 中间垂直线…

5.1、【 K线图的练习】

有经验的股民都知道K线基本功的重要性。在早些时候不依靠其他的一些量化指标&#xff0c;仅凭老股民对K线的理解&#xff0c;就可以做到不错的收益率。 各种k线组合&#xff0c;比如黄昏星、启明星&#xff0c;多方炮&#xff0c;乌云盖顶。。。几十种最基本的经典k线信号&…

如何看k线图的图解法

K线图是黄金白银投资分析的基础手段&#xff0c;我们建议大家认真理解关于k线图的基础知识&#xff0c;掌握好如何看k线图图解的方式&#xff0c;如果能将相关知识融会贯通&#xff0c;日后的投资就等于成功了一大半。   K线图直观、立体感强、信息丰富的特点&#xff0c;通过…

一步一步教你写股票走势图——K线图四(高亮联动一)

目录 一步一步教你写股票走势图——分时图一&#xff08;概述&#xff09; 一步一步教你写股票走势图——分时图二&#xff08;自定义xy轴&#xff09; 一步一步教你写股票走势图——分时图三&#xff08;对齐图表、自定义柱状图高亮&#xff09; 一步一步教你写股票走势图…

连连看(五)

Python3 实现QQ游戏连连看游戏辅助 连连看&#xff08;零&#xff09;—— 前记连连看&#xff08;一&#xff09;—— 你看&#xff0c;这是截图啊连连看&#xff08;二&#xff09;—— 哦吼&#xff0c;PIL CV2 Numpy 假图像识别构建矩阵连连看&#xff08;三&#xff09…

如何看k线图图解

K线图是贵金属投资者进行技术分析的基础手段&#xff0c;建议刚刚接触朋友认真理解关于k线图的基础知识&#xff0c;如果能掌握好K线&#xff0c;日后的学习看盘和技术分析就会容易得多。 K线图直观、立体感强&#xff0c;而且信息丰富&#xff0c;是金融投资分析中最常用和最基…