java讲解Spring Boot配置文件级别 相互覆盖关系 解决一方不愿意给数据库密码 一方不愿意给源码时 数据库配置问题

前面 我们讲过Spring Boot 修改临时变量的方式
但另一个场景 就是 我们 在本地开发环境 用的是一个配置 但如果项目经理上线 他想改这些配置 怎么弄呢
在这里插入图片描述
特别是数据库之类的配置 很多线上是不太一样的 那么 我们先看一个比较基本的方法
在配置文件的同目录下创建一个目录 叫 config 然后在下面再创建一个 application.yml 文件
我们先编写这样一段代码

server:port: 8083

设置启动端口 为 8083

我们看到 之前我们自己写的这个配置文件 启动的端口是 80端口
在这里插入图片描述
然后我们启动项目
启动之后 我们会发现 端口启动在了 8083上
在这里插入图片描述
说明采用了我们config目录下的配置文件
所以 项目经理就可以在这个目录下创建 config 然后写配置文件来覆盖内容
这两个配置文件 config 下的优先级高 当 A设置了 B没设置的项 用A的配置 如果A没设置 B设置了 用B的
就是说 一个配置 一个文件中设置了 另一个文件没设置 就采用设置的那个 如果都设置了 用优先级高的

但是 不适合所有情况 例如一些银行的项目 他们 保密性比较强 那么 数据库密码可能不会愿意给你 你只需要帮他们开发完程序 他们自己部署
那么 这种也解决不了他们的问题
就好比 他们不想给数据库密码 你们不想给源码

这里 我们先将程序打个包
在这里插入图片描述
我们在本地打开这个包文件
在这里插入图片描述
然后 我们在终端运行jar包 可以看到 他目前采用了config中的配置 启动在了 8083端口
在这里插入图片描述
我们可以在本地随便创建一个文件夹 空的
在这里插入图片描述
然后 将jar包拷进来
在这里插入图片描述
然后 我们拷一个 application.yml 到这个目录下
在这里插入图片描述
然后 右键选择打开方式
在这里插入图片描述
可以选择任何一种编辑器打开 直接选idea也可以
然后 编写代码如下

server:port: 8055

这次 我们直接将 端口设置为 8055
然后 在这个目录终端下运行jar包
在这里插入图片描述
可以看到 它的我们刚刚写的 8055

这个很简单 就是 如果在jar同目录下有application.yml文件 那么 这个 application.yml中配置的优先级 会高于前面说的两种

但这里 还有个更高级的
我们在jar目录下创建一个config目录
在这里插入图片描述
对 和前面那个 config一个意思 下面可以放一个application.yml文件
在这里插入图片描述
我们编写这个application.yml文件内容如下

server:port: 8066

这次 我们设置端口 8066

然后再次运行jar
在这里插入图片描述
可以看到 又将端口覆盖为 8066了
这个级别就会更高

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/52973.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言笔记6

关于microsoft visual 的学习笔记 CtrlF5就是启动编译程序 先CtrlA进行全选&#xff0c;然后AitF8就自动的调节代码的格式 #include <stdio.h> #include <stdlib.h> int main() {//system启动程序(在一个程序中启动另外一个程序)//如果程序环境变量中找不到程序&am…

2019年09月《全国青少年软件编程等级考试》Python一级真题解析

一、单选题 第1题 关于Python的编程环境&#xff0c;下列的哪个表述是正确的&#xff1f; A&#xff1a;Python的编程环境是图形化的&#xff1b; B&#xff1a;Python只有一种编程环境ipython&#xff1b; C&#xff1a;Python自带的编程环境是IDLE&#xff1b; D&#…

Java Collection接口详解

Collection 接口 Collection接口是Java集合框架的根接口。 Collection 接口是 List、Set 和 Queue 接口的父接口&#xff0c;通常情况下不被直接使用。 Collection 接口定义了一些通用的方法&#xff0c;通过这些方法可以实现对集合的基本操作。定义的方法既可用于操作 Set …

2023华数杯数学建模C题思路 - 母亲身心健康对婴儿成长的影响

# 1 赛题 C 题 母亲身心健康对婴儿成长的影响 母亲是婴儿生命中最重要的人之一&#xff0c;她不仅为婴儿提供营养物质和身体保护&#xff0c; 还为婴儿提供情感支持和安全感。母亲心理健康状态的不良状况&#xff0c;如抑郁、焦虑、 压力等&#xff0c;可能会对婴儿的认知、情…

Arthas协助MQ消费性能优化

背景 项目中使用AWS的SQS消息队列进行异步处理&#xff0c;QA通过压测发现单机TPS在23左右&#xff0c;目标性能在500TPS&#xff0c;所以需要对消费逻辑进行优化&#xff0c;提升消费速度。 目标 消费TPS从23提升到500 优化流程 优化的思路是先分析定位性能瓶颈&#xff…

新手指南:流程图中各种图形的含义及用法解析

我们经常在技术设计、沟通、业务演示等一些领域看到流程图&#xff0c;它也可以称为输入输出图。顾名思义&#xff0c;它是指一种简单的工作流程的具体步骤&#xff0c;比如包括一次会议的流程&#xff0c;以及一次生产制造的顺序和过程等。本文将为大家介绍流程图的含义和具体…

Python(六十六)字典生成式

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

微前端中的 CSS

本文为翻译 本文译者为 360 奇舞团前端开发工程师原文标题&#xff1a;CSS in Micro Frontends 原文作者&#xff1a;Florian Rappl 原文地址&#xff1a;https://dev.to/florianrappl/css-in-micro-frontends-4jai 我被问得最多的问题之一是如何在微前端中处理 CSS。毕竟&…

无涯教程-Lua - Iterators(迭代器)

迭代器是一种构造&#xff0c;使您可以遍历所谓的集合或集合的元素。在Lua中&#xff0c;这些集合通常引用表&#xff0c;这些表用于创建各种数据结构(如数组)。 通用迭代器 通用的 for 迭代器提供集合中每个元素的键值对。下面给出一个简单的示例。 array{"Lua",…

【C++】开源:sqlite3数据库配置使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍sqlite3数据库配置使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下…

小程序如何上传商品图片

了解如何在小程序商城中上传商品图片是非常重要的&#xff0c;因为商品图片的质量和展示效果直接影响到用户对商品的购买决策。下面&#xff0c;我将介绍怎么在小程序上传产品图片的方法和注意事项。 1. 图片准备&#xff1a;在上传商品图片之前&#xff0c;首先要准备好商品图…

git bash 安装sdkadmin

1.下载相关安装包,复制到git 安装目录 D:\software\Git\mingw64\bin 2. 运行 curl -s "https://get.sdkman.io" | bash