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
相关推荐
曹牧16 分钟前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX23 分钟前
服务异步通信
开发语言·后端·微服务·ruby
掘了28 分钟前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
爬山算法1 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7251 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎1 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄1 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
Moment1 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
忆~遂愿2 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
小韩学长yyds2 小时前
Java序列化避坑指南:明确这4种场景,再也不盲目实现Serializable
java·序列化