当前位置: 首页 > article >正文

SpringBoot多级配置文件

1.问题先导 

有这样的场景,我们开发完毕后需要测试人员进行测试,由于测试环境和开发环境的很多配置都不相同,所以测试人员在运 行我们的工程时需要临时修改很多配置,如下

java –jar springboot.jar –-spring.profiles.active=test --server.port=85 --
server.servlet.context-path=/heima --server.tomcat.connection-timeout=-1 …… …… …… …… ……

针对这种情况, SpringBoot 定义了配置文件不同的放置的位置;

而放在不同位置的优先级时不同的。

SpringBoot 中4级配置文件放置位置:

1级:classpath:application.yml
2级:classpath:config/application.yml
3级:file :application.yml
4级:file :config/application.yml

说明:级别越高优先级越高 

2.实验准备 

项目结构: 

 

由于properties的优先级高于yml

先将properties中的端口设置注释掉;

3.多级配置 

1级:类路径下

在类路径下的recourse下创建一个application.yml的文件:将端口设置为80

server:
  port: 81

 

启动项目:

配置生效。 

2级:类路径下的config文件夹下

在类路径下的recourse下新建一个config文件夹,再在里面新建一个application.yml文件。

端口设置为81:

重启程序:

可以见到81端口生效,当类路径下的application.yml和类路径下的config文件夹下的application.yml文件同时存在时,后者优先级高,后者生效。 

3级:jar包文件夹下

将项目用maven打包:

找到jar包所在文件目录:

 在当前路径新建一个application.yml文件端口设置为82:

用命令行启动jar包看看端口是多少:

可以看到文件目录下的配置文件优先级高于类路径下的。 

4级:jar包文件夹下的config文件夹下 

再在jar包所在文件夹目录下新建config文件夹,里面新建application.yml文件:

端口设置为83:

 

用命令行启动:

端口为83:

1,2,3,4各个级别的配置文件优先级验证完毕。 


http://www.kler.cn/a/510311.html

相关文章:

  • Centos7将/dev/mapper/centos-home磁盘空间转移到/dev/mapper/centos-root
  • Output
  • 前端项目搭建和基础配置
  • C# 修改项目类型 应用程序程序改类库
  • 技术洞察:C++在后端开发中的前沿趋势与社会影响
  • postcss插件-实现vw适配
  • 五.指派问题(变异问题)
  • 【TCP】rfc文档
  • 数据结构学习笔记——排序
  • 详细探讨:为什么 Java 不支持泛型数组?
  • 我的创作纪念日 - 关于我在csdn中的一年
  • golang标准库os/exec使用方法示例
  • php-2025面试题准备
  • vue3-json-viewer和vue-json-pretty插件使用,vue3 json数据美化展示
  • 29、【OS】【Nuttx】最小系统初始化分析(4):定时器(三)
  • nodejs版本管理,使用 nvm 删除node版本,要删除 Node.js 的某个版本详细操作
  • 精通Python (13)
  • 程序控制的角度
  • Flink概述
  • WPF 属性绑定详解
  • Unity 获取序列化对象属性详解
  • AIP-121 面向资源设计
  • Linux-----线程同步(条件变量)
  • 开源模型应用落地-工具使用篇-Spring AI-Function Call(八)
  • 爬虫第一篇
  • oneplus3t-lineage-14编译-android7