Springboot的application.properties或者application.yml环境的指定运行与配置

2023-11-14

Springboot的application.properties或者application.yml文件的配置

1.关于多个配置环境的指定运行

我们在主配置文件编写的时候,文件名可以是:application-{profile}.properties/yml
两种文件的格式:

默认全局配置文件:
	application.properties  : k=v,或行内写法(k: v,[Set/List/数组] {map,对象类型的属性},并且 []可省,{}不能省)
	application.yml  :  yaml ain't myarkup language ,不是一个标记文档
	注意:1. k:空格v   2.通过垂直对齐 指定层次关系	3.默认可以不写引号; ""会将其中的转义符进行转义,其他不会

一般分为开发、测试、运行,命名要求要规范,下图有详细示例

1.1多个properties

默认使用application.properties的配置
目录可以如下:
在这里插入图片描述
在这里插入图片描述

如果要选择某一个具体的环境: application.properties中指定:spring.profiles.active=环境名

如果将application.properties注释掉,spring boot仍然会读取其他appilcation-环境名.properties中的配置。并且properties的优先级高于yml

1.2yml支持多文档块方式

通过—将文档分成多文档块:
注意格式首行同则相当于在同一目录

server:
  port: 8081
spring:
  profiles:
    active: prod
#文档块一
---
server:
  port: 8083
spring:
  profiles: dev
#文档块二
---
server:
  port: 8084
spring:
  profiles: prod  #指定属于哪个环境
#文档块三

1.3激活指定profile

配置文件中指定
使用spring.profiles.active激活指定profile

1.3.1 application.properties
在这里插入图片描述
1.3.2 application.yml
通过dev或prod指定当前运行的环境
在这里插入图片描述

程序参数指定
程序参数中添加–spring.profiles.acprotive激活指定profile

在这里插入图片描述

虚拟机参数指定
在VM options中添加-Dspring.profiles.active=dev

在这里插入图片描述

1.4 动态切换环境总结


	 	i:通过运行参数指定环境
		1)STS(Eclipse) :Run Configuration - Argument - program Argument	
			--spring.profiles.active=环境名
		 (2)命令行方式:
			java -jar 项目名.jar --spring.profiles.active=环境名
		ii:通过vm参数指定环境
			STS(Eclipse) :Run Configuration - Argument - VM	
			-Dspring.profiles.active=环境名

2.关于配置文件路径的读取顺序

–file:./config/

–file:./

–classpath:/config/

–classpath:/

在这里插入图片描述
优先级由高到底,高优先级的配置会覆盖低优先级的配置
SpringBoot会从这四个位置全部加载主配置文件,互补配置

在这里插入图片描述

在这里插入图片描述
最终读取文件运行情况:
在这里插入图片描述
项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同起作用形成互补配置;(SpringBoot2.0版本之后指定文件与默认配置不会形成互补配置,只是指定文件中的配置生效)

java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar –spring.config.location=文件路径
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Springboot的application.properties或者application.yml环境的指定运行与配置 的相关文章

  • 怎么解决Greenplum中用pg

    基本思路是为ns1 table1设置分布策略 root登陆master host切换到Greenplum的管理员用户 比如gpadmin su gpadmin使用psql连接数据库 psql databasename设置随机分布策略alte
  • 超好玩地铁跑酷游戏,内涵源代码

    直接上代码 include
  • java的多重循环和程序调试

    java的多重循环和程序调试 一 掌握Java二重循环 多重 嵌套 注意 1 外层循环控制行 内层循环控制列 每行打印的内容 2 外层循环执行一次 内层循环执行一遍 3 一般多重循环值的就是二重循环 二 使用跳转语句控制程序的流程 retu
  • 在线Plist文件格式转Json文件格式

    Plist文件是一种用于存储应用程序配置信息的文件格式 其中包含应用程序的各种设置和数据 在过去 Plist文件通常是以 plist 格式存储的 然而 随着时间的推移 人们开始使用 JSON 格式来存储更复杂的数据结构和数据 如果您需要将
  • 国人自研开源项目,一款简单易用的 GitLab 替代品

    公众号关注 GitHubDaily 设为 星标 每天带你逛 GitHub 今天跟大家介绍一个国人自研项目 可用做 GitLab 替代品 PS 本文来自作者本人投稿 OneDev 是一个开源的一体化的 DevOps 平台 目前项目在 GitH
  • 机器学习之网格搜索技术,如何在Auto-sklearn中应用网格搜索技术

    文章目录 一 机器学习中的网格搜索技术是怎么回事 二 通俗解释 三 在一般情况下使用网格搜索技术 四 GridSearchCV网格搜索技术的原理 五 如何在Auto sklearn中使用网格搜索技术 1 Auto sklearn实际用应用中
  • python3 爬取今日头条文章(巧妙避开as,cp,_signature)

    使用环境 python3 scrapy win10 爬取思路 一 关于as cp的生成与 signature的想法 对于今日头条的爬虫 网上搜索出来的文章大多是基于崔庆才 通过搜索爬取美女街拍的方案 怎么说呢 类似这样的虽说是个巧办法 但是
  • RPC研究

    深入浅出RPC 深入篇 mindwind 2014 09 22 出处 http mindwind me blog 2014 09 22 深入浅出RPC 深入篇 html 解析 RPC 的本质 深入篇 我们主要围绕 RPC 的功能目标和实现考
  • golang内存分析工具

    pprof https blog csdn net weixin 40486544 article details 108402577 utm medium distribute pc relevant none task blog 2de
  • Unity粒子系统详解

    接下来的图片就是Unity2017 1 0f3 编辑器中的粒子系统模块 了解粒子系统 必须先了解每一个属性都代表了什么 之后才能根据这些原理来调整出自己满意的效果 主面板ParticleSystem Duration 粒子发射周期 如图的意
  • 互联网公司数据产品经理和数据分析师,主要有什么区别?

    数据产品经理和数据分析师 是目前互联网公司的热门职位 它跟数据分析师的职责有重叠的部分 不同的地方是这个职位关注的点是数据分析的产品化 这是普通互联网公司数据产品经理的日常 那数据产品经理跟互联网公司里的产品经理有什么区别呢 在大的互联网公
  • mysql+'@'%_mysql忘记登录的人:命令拒绝用户”@’%’

    跑步秀表示我以具有数据库所有权限的用户身份登录 跑步表状态 导致错误 并且错误不显示我已登录的用户名 就好像对于这个命令 mysql忘记了我是谁 其他select语句工作正常 有人可以解释一下吗怎么修 谢谢 Welcome to the M
  • HUAWEI+Eudemon1000E+防火墙+典型配置案例

    当使用consol口登入Eudemon1000E 防火墙时 如果登入失败退出可能会被锁定 提示 User interface con0 is locked 锁定的时间默认是10分钟 可以通过对con0 配置修改锁定值 设置串口console
  • 解决java.lang.RuntimeException: Can't toast on a thread that has not called Looper.prepare()

    最近在整理Android开发过程中的一些错误 话不多说 直接上错误 错误原因是自己想在网络请求成功后 弹出一个Toast提醒 但由于程序在主线程中创建handler后会创建一个looper对象 而子线程却不会 那什么时候需要looper L

随机推荐

  • 飞桨AI课程干货--带你开启新世界的大门!

    笔者近期体验了免费的 百度深度学习7日打卡第六期 Python小白逆袭大神 训练营 课程每天都有对应的直播 由中科院团队负责教学 每天有对应的作业贯穿其中 带你全程体验百度AI开放平台 AI Studio 飞桨PaddlePaddle Ea
  • SQL视图View的总结和使用

    实际工作当中 数据交互查询返回结果 SQL你是没办法找其他的完美替代的 但有的时候还是会遇到一些很头痛的问题需要视图view来解决 比如以下场景 view日常使用场景 场景一 有的时候 多个表并表条件查询 尤其是好几张表那种一起查询的那种
  • JS 使用正则

    在JS中如何使用正则来校验字符串 1 使用RegExpObject test string 匹配则为true否则为false 声明一个正则对象 var a 0 9 需要注意的是 a不是字符串 而是一个对象 我们可以打印下a的构造函数 没错
  • ESP32-WROVER-E无法正常写入固件

    在之前用模块下载程序都是好的 然后突然就出现了无法下载的现象 打印了他的输出都是 rst 0x10 RTCWDT RTC RESET boot 0x13 SPI FAST FLASH BOOT invalid header 0xffffff
  • 【2023】华为OD机试真题Java-题目0219-查找充电设备组合

    非常典型的动态规划问题 package com company test import java util Arrays public class Main1 public static void main String args int
  • Matlab使用LSTM网络做classification和regression时XTrain的若干种数据结构-part I

    目前看来 Deep learning的两大用途是classification和regression 以LSTM为例 它的优势在于对时序数据 sequence data 强大的处理能力 简单来说 可以用作 1 sequence to labe
  • 浅谈C++

    重载原因 C 中的运算符重载是一种特性 允许程序员定义自定义类类型的运算符操作 通过运算符重载 可以对类对象执行类似于内置类型的操作 例如加法 减法 乘法等 运算符重载通过定义特定的成员函数或非成员函数来实现 成员函数的运算符重载为类的成员
  • 【通过粒子滤波进行地形辅助导航】用于地形辅助导航的粒子滤波器和 PCRB研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 粒子滤波 Particle Filter
  • linux搭建 sftp服务 && sftp自动上传脚本

    1 新建sftp用户组 sftp 用户家目录 groupadd sftp mkdir p sftpdata sftp 2 新建sftp用户 useradd d sftpdata sftp tester m g sftp s sbin nol
  • 安装 Hana Studio

    1 从sap 官网下载下来的安装包是 sar 类型的压缩包 2 需要用专门的解压工具 SAPCAR 3 运行sapcar 工具和安装包放到英文路径下 win r 输入cmd 输入CD SAPCAR保存路径 我的保存在 出现这种 没有打开相应
  • pandas之Series()菜鸟教程

    Pandas数据结构Series 基本概念及创建 一维数组 Serise import numpy as np import pandas as pd import time Series 数据结构 Series 是带有标签的一维数组 可以
  • CUDA安装详细教程

    一 CUDA下载 CUDA官网 二 CUDA具体安装步骤 1 检查电脑的NVIDIA版本 在cmd中输入nvidia smi 注意nvidia smi中的是驱动对应的cuda最高版本 只要此版本大于等于你安装的cuda即可 若命令nvidi
  • 机器学习笔试面试超详细总结(一)

    文章目录 1 判别模型和生成模型 2 最大概率分词 3 中文分词的基本方法 4 CRF 条件随机场 的特点 5 隐马尔可夫模型 HMM 时间复杂度及可以使用的数据集 6 在二分类问题中的评价方案 7 决策树特点 8 过拟合 9 异方差性 1
  • 关于gitlab的使用1——拉取代码

    1 快速上手 1 1注册 1 2登录 1 3选择 1 4选择所要拉取代码到idea的项目 1 5 选择索要拉取的模块 1 6选择clone按钮进行操作 1 7复制ssh或者http协议地址 1 8打开idea 1 9输入协议地址和保存路径
  • 关于Ajax跨域提交时session丢失的问题

    今天在工作中遇到了一个问题 就是当使用ajax和jsonp进行跨域时 每一服务器都会在cookie里set一个新的sessionId 会将原有的sessionId覆盖 也就是说客户端对于服务器来说始终处于未登录状态 我使用谷歌浏览器是没有问
  • R语言gg3D包绘制3D图形

    本次分享一个绘图还不错的包 gg3D 2018年1月公布 一 安装包 gg3D包目前 写该文章时 在R语言官方网站还不能找到并下载 但可以通过开源的托管平台gitHub下载 运行如下代码 install packages devtools
  • React Router中useRoutes()方法的使用

    运用场景 当我们需要路由权限控制点时候 对路由数组做一些权限的筛选过滤 这时需要把路由进行集中式管理 所谓的集中式路由配置就是用一个数组统一把所有的路由对应关系写好替换本来的Roues组件 便于管理路由 更加灵活 原来的路由写法 impor
  • STM32 基础系列教程 45 - FSMC_LCD_Touch

    前言 上一节我们完成了用 STM32F4的 FSMC接口来控制 TFTLCD的显示的操作 其实正点原子的探索者F4开发板带的屏幕支持触摸操作 笔者用的是4 3寸的电容触摸屏 本节我们继续实验 来完成基于STM32的触摸屏的实验 关于触摸屏的
  • Xshell的下载与安装

    引言 上一篇文章有介绍Windows子系统的安装与使用 安装Ubuntu桌面版确实可以直接使用Ubuntu子系统 但是Ubuntu桌面版的界面不是很好看 并且不能直接上传文件到服务器中 所以本篇章介绍SSH远程终端工具Xshell的下载与安
  • Springboot的application.properties或者application.yml环境的指定运行与配置

    Springboot的application properties或者application yml文件的配置 1 关于多个配置环境的指定运行 我们在主配置文件编写的时候 文件名可以是 application profile propert