当前位置: 首页 > news >正文 SpringBoot-配置优先级 news 来源:原创 2025/6/9 23:43:21 一.配置文件优先级 在java中我们可以通过多种配置文件格式来配置所需要的属性,我们以配置tomcat服务器运行的端口号server.port为例,已知配置文件的格式有properties,yml,yaml三种。如果这三种文件同时存在,那么哪一种先生效呢?它们生效的顺序又是什么样呢? 我们首先来执行以下springboot项目,看看tomcat端口号是多少。 当三个都存在时,生效的是8081,也就是说首先是properties先生效。将properties注释掉,再次运行,生效的是8082。即次优先是yml。最后是yaml。 二.配置java系统属性配置和命令行参数的优先级 我们现在配置好后将配置文件注释掉,看看Java系统属性和命令行参数哪个先生效。 可以看到命令行参数先生效,去掉命令行参数,java系统属性生效。 这是在idea中,如果项目打包上线了,我们如何配置java系统属性和命令行参数呢? 我们打包后运行jar包,在java后设置java系统属性,在最后设置命令行参数。不知道使用什么指令执行,输入java,帮助文档会告诉你。 不指定,默认8080 都设置,命令行参数生效 删掉命令行参数,java系统属性生效 三. 配置文件和java系统属性和命令行参数的优先级 我们将配置文件和java系统属性都配置好,看看谁先生效。 运行后是9000,那么是java系统属性先生效,而命令行参数的优先级又大于java系统属性,因此总的优先级顺序为: 命令行参数>java系统属性>properties>yml>yaml 相关文章: vue中computed方法使用;computed返回函数 (新版本onenet)stm32+esp8266/01s mqtt连接onenet上报温湿度和远程控制(含小程序) CST的UAV无人机RCS --- A求解器 - 一维距离像(HRRP)和正弦图(Sinogram) 01背包之---应用篇 JS 获取星期几 基于AI人工智能UI自动化测试工具:Midscene A*算法超级详细讲解 文档识别-C#中英文文档识别接口-PDF文件内容识别API c++初阶--Stack,Queue和PriorityQueue的实现 大话西游2经典再续前缘单机版|无需虚拟机|操作简单+GM管理+可修改仙玉 设计模式--spring中用到的设计模式 unity学习56:旧版legacy和新版TMP文本输入框 InputField学习 JAVA+MySQL实现分库分表及设计思路 数据结构-直接插入和希尔排序 生成SQL的模型与工具 netcore入门案例:netcore api连接mysql的完整记事本接口示例 玄机-第二章 日志分析-mysql应急响应的测试报告 JWT+redis实现令牌刷新优化方案 STM32内存五区及堆栈空间大小设置(启动文件浅析) yolov8乱改版(使用最新源码版本ultralytics-8.3.80——该项目库集成了yolov12) 网站空间续费一年多少钱/湖南关键词优化快速 建设一个导航网站/全网推广软件 注册外贸网站有哪些问题/百度搜索热词排行榜 西安网站优化维护/优化网站界面的工具 公众号里的功能怎么开发/网站优化seo方案 像网站的ppt怎么做的/德国搜索引擎
一.配置文件优先级 在java中我们可以通过多种配置文件格式来配置所需要的属性,我们以配置tomcat服务器运行的端口号server.port为例,已知配置文件的格式有properties,yml,yaml三种。如果这三种文件同时存在,那么哪一种先生效呢?它们生效的顺序又是什么样呢? 我们首先来执行以下springboot项目,看看tomcat端口号是多少。 当三个都存在时,生效的是8081,也就是说首先是properties先生效。将properties注释掉,再次运行,生效的是8082。即次优先是yml。最后是yaml。 二.配置java系统属性配置和命令行参数的优先级 我们现在配置好后将配置文件注释掉,看看Java系统属性和命令行参数哪个先生效。 可以看到命令行参数先生效,去掉命令行参数,java系统属性生效。 这是在idea中,如果项目打包上线了,我们如何配置java系统属性和命令行参数呢? 我们打包后运行jar包,在java后设置java系统属性,在最后设置命令行参数。不知道使用什么指令执行,输入java,帮助文档会告诉你。 不指定,默认8080 都设置,命令行参数生效 删掉命令行参数,java系统属性生效 三. 配置文件和java系统属性和命令行参数的优先级 我们将配置文件和java系统属性都配置好,看看谁先生效。 运行后是9000,那么是java系统属性先生效,而命令行参数的优先级又大于java系统属性,因此总的优先级顺序为: 命令行参数>java系统属性>properties>yml>yaml 相关文章: vue中computed方法使用;computed返回函数 (新版本onenet)stm32+esp8266/01s mqtt连接onenet上报温湿度和远程控制(含小程序) CST的UAV无人机RCS --- A求解器 - 一维距离像(HRRP)和正弦图(Sinogram) 01背包之---应用篇 JS 获取星期几 基于AI人工智能UI自动化测试工具:Midscene A*算法超级详细讲解 文档识别-C#中英文文档识别接口-PDF文件内容识别API c++初阶--Stack,Queue和PriorityQueue的实现 大话西游2经典再续前缘单机版|无需虚拟机|操作简单+GM管理+可修改仙玉 设计模式--spring中用到的设计模式 unity学习56:旧版legacy和新版TMP文本输入框 InputField学习 JAVA+MySQL实现分库分表及设计思路 数据结构-直接插入和希尔排序 生成SQL的模型与工具 netcore入门案例:netcore api连接mysql的完整记事本接口示例 玄机-第二章 日志分析-mysql应急响应的测试报告 JWT+redis实现令牌刷新优化方案 STM32内存五区及堆栈空间大小设置(启动文件浅析) yolov8乱改版(使用最新源码版本ultralytics-8.3.80——该项目库集成了yolov12) 网站空间续费一年多少钱/湖南关键词优化快速 建设一个导航网站/全网推广软件 注册外贸网站有哪些问题/百度搜索热词排行榜 西安网站优化维护/优化网站界面的工具 公众号里的功能怎么开发/网站优化seo方案 像网站的ppt怎么做的/德国搜索引擎