Spring Boot 多环境配置

Spring Boot 多环境配置解决方案

在 Spring Boot 中,我们可以使用 profiles 来区分不同环境的配置。下面我将展示如何配置开发环境和生产环境,并提供一个可视化界面来演示配置切换效果。

实现思路

  1. 创建主配置文件 application.yml 存放通用配置

  2. 创建环境特定配置文件:

    • application-dev.yml - 开发环境配置

    • application-prod.yml - 生产环境配置

  3. 使用 spring.profiles.active 属性指定当前激活的环境

  4. 创建简单的可视化界面展示配置切换

代码实现

1. 项目结构

text

复制代码
src/
├── main/
│   ├── java/
│   │   └── com/example/
│   │       └── DemoApplication.java
│   └── resources/
│       ├── application.yml
│       ├── application-dev.yml
│       ├── application-prod.yml
│       └── static/
│           └── index.html

2. 配置文件内容

application.yml (主配置文件)

yaml

复制代码
spring:
  profiles:
    active: dev  # 默认使用开发环境

# 通用配置
app:
  name: 多环境配置示例
  version: 1.0.0

application-dev.yml (开发环境配置)

yaml

复制代码
# 开发环境配置
server:
  port: 8080
  servlet:
    context-path: /dev

app:
  environment: 开发环境
  api-url: http://localhost:8080/dev/api
  database-url: jdbc:mysql://localhost:3306/dev_db
  debug: true
  max-connections: 5

application-prod.yml (生产环境配置)

yaml

复制代码
# 生产环境配置
server:
  port: 80
  servlet:
    context-path: /prod

app:
  environment: 生产环境
  api-url: https://api.example.com/prod/api
  database-url: jdbc:mysql://prod-db.example.com:3306/prod_db
  debug: false
  max-connections: 50
相关推荐
null or notnull几秒前
java服务器空间不够时:将多个服务器的文件存放至同一个服务器上(使用映射器的办法)
java·运维·服务器·java-ee
FAFU_kyp1 分钟前
WebMvcConfig 和 WebSecurityConfig 详解
spring boot·java-ee
小威要向诸佬学习呀5 分钟前
2025年软件外包避坑指南与平台推荐:开发者实用经验分享
后端
冒泡的肥皂5 分钟前
2PL+MVCC看一些场景
数据库·后端·mysql
bcbnb9 分钟前
Charles 抓不到包怎么办?一线工程师的排查与真机抓包流程
后端
代码栈上的思考14 分钟前
JVM中内存管理的策略
java·jvm
往事随风去21 分钟前
虚拟线程在Spring Boot中的正确使用方式
spring boot
bcbnb26 分钟前
IPA 一键加密工具实战,用多工具组合把加固做成一次性与可复用的交付能力(IPA 一键加密/Ipa Guard CLI/成品加固)
后端
YoungP29 分钟前
【Effective Java 条目二】-- 当构造器参数较多时考虑使用生成器
java
麦兜*31 分钟前
Spring Boot 应用 Docker 监控:Prometheus + Grafana 全方位监控
spring boot·后端·spring cloud·docker·prometheus