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
相关推荐
葫芦和十三5 小时前
图解 MongoDB 21|选举与 failover:Primary 是怎么选出来的
后端·mongodb·agent
GetcharZp5 小时前
26k Star 开源内网穿透神器 NetBird,一分钟实现全球设备互联!
后端
考虑考虑6 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯7 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
lizhongxuan9 小时前
多Agent之间的区别
后端
青石路10 小时前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java
杨充11 小时前
1.面向对象设计思想
后端
IT_陈寒11 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
systemPro12 小时前
2.6亿条设备数据,历史查询从超时到50ms,我做了什么
后端
要阿尔卑斯吗12 小时前
提示词优化启示:为什么“按顺序输出“比“关键度评分“更有效
后端