SpringBoot配置文件多环境开发

目录

一、设置临时属性的几种方法

1.启动jar包时,设置临时属性

​2.idea配置临时属性

3.启动类中创建数组指定临时属性

二、多环境开发

1.包含模式

2.分组模式

三、配置文件的优先级

[1.bootstrap 文件优先:](#1.bootstrap 文件优先:)

2.特定配置文件优先

3.文件夹位置优先

4.扩展名优先


一、设置临时属性的几种方法

1.启动jar包时,设置临时属性

2.idea配置临时属性

程序实参虚拟机选项,两个模式中,都可以设置临时属性

在程序实参中,**--**server.port=8088

在 虚拟机选项中,设置的是 -Dserver.port=8089

若两个设置不一致,以程序实参为准

3.启动类中创建数组指定临时属性

程序实参和虚拟机属性中设置的端口号,本质上都是在args[]中设置

我们可以在启动类中,自己新建一个数组arg[]存储临时配置,不采用编译器提供的args[]

java 复制代码
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
@SpringBootApplication
public class SecurityApplication {
    public static void main(String[] args) {
        String[] arg = new String[1];
        arg[0]="--server.port=8090";
        SpringApplication.run(SecurityApplication.class, arg);
    }
}

二、 多环境开发

1.包含模式

active:dev 指的是当前使用的是application-dev.yaml文件

inclue:DB: 并且引入application-DB.yaml文件

2.分组模式

active:dev 指的是当前采用的是"dev"这个组

"dev":dev,DB。"dev"这个组中引入了application-dev.yaml和application-DB.yaml文件

三、配置文件的优先级

1.bootstrap 文件优先:

bootstrap文件的优先级大于application文件的优先级。bootstrap 文件用于早期初始化,例如连接到外部配置中心(如 Spring Cloud Config)。这些配置需要在应用程序上下文启动之前加载。

2.特定配置文件优先

application-{profile}.ymlapplication-{profile}.properties 文件的优先级高于默认的 application.ymlapplication.properties 文件。

3.文件夹位置优先

resources/config目录下的优先级大于resource/目录下的优先级

4.扩展名优先

properties(最高)> yml > yaml(最低)

四、服务器上部署 jar包

在服务器上,使用docker部署jar包

SpringBoot项目常见应用的部署方法(合集)_springboot集群部署方案-CSDN博客

对Maven多模块开发配置不了解的建议看一下这篇:maven多模块开发-CSDN博客

相关推荐
L汐3 分钟前
02 K8s双主安装
java·容器·kubernetes
jackson凌30 分钟前
【Java学习笔记】【第一阶段项目实践】房屋出租系统(面向对象版本)
java·笔记·学习
带刺的坐椅33 分钟前
Solon Ai Flow 编排开发框架发布预告(效果预览)
java·ai·solon·dify·solon-flow
2302_809798321 小时前
【JavaWeb】JDBC
java·开发语言·servlet
小刘不想改BUG2 小时前
LeetCode LCR 010 和为 K 的子数组 (Java)
java·算法·leetcode
MeyrlNotFound2 小时前
(二十一)Java集合框架源码深度解析
java·开发语言
正在走向自律2 小时前
2025年、2024年最新版IntelliJ IDEA下载安装过程(含Java环境搭建+Maven下载及配置)
java·jvm·jdk·maven·intellij-idea
不会就选C.2 小时前
【开源分享】健康饮食管理系统(双端+论文)
java·spring boot·开源·毕业设计
永远有多远.2 小时前
【高频面试题】LRU缓存
java·缓存·面试
Ten peaches2 小时前
Selenium-Java版(环境安装)
java·前端·selenium·自动化