SpringBoot后端开发常用工具详细介绍——application多环境配置与切换

文章目录

引言介绍

application.yml 是 Spring Boot 中用于配置应用程序的主配置文件,它允许你配置应用程序的各种属性,如服务器端口、数据库连接、缓存策略等。这个文件支持不同环境的配置,我们可以为开发环境、测试环境和生产环境创建不同的配置文件。

  • application-dev.yml:这是为开发环境准备的配置文件,通常包含开发环境中特有的配置,如数据库连接、服务器端口等。开发环境配置可以比较随意,为了开发调试方便,一般打开全部错误报告。
  • application-test.yml:这是为测试环境准备的配置文件,测试环境一般是克隆一份生产环境的配置,用于进行全面的测试,看看所实现的功能有没有bug。
  • application-prod.yml:这是为生产环境准备的配置文件,生产环境是正式提供对外服务的,一般会关掉错误报告,打开错误日志。生产环境的配置需要更加谨慎和稳定。

在真实的工作中,你可以通过在 application.yml 文件中使用 spring.profiles.active 来激活不同的配置文件。例如,设置 spring.profiles.active: dev 会激活 application-dev.yml 配置文件。这样,项目最终会采用 application.yml 和激活的环境配置的组合。

操作方式通常是在项目的资源目录 src/main/resources 下创建这些配置文件。在部署或启动应用程序时,可以通过命令行参数或者环境变量来指定当前激活的环境配置文件。例如,在启动应用程序时,可以使用以下命令来激活开发环境配置:

shell

shell 复制代码
java -jar yourapp.jar --spring.profiles.active=dev

或者,在 application.yml 文件中直接指定激活的配置文件:

yaml 复制代码
spring:
  profiles:
    active: dev

这样,Spring Boot 会加载 application.yml 中的公共配置,并覆盖或添加 application-dev.yml 中针对开发环境的特定配置。同样的,你可以为测试和生产环境设置 testprod 作为激活的配置文件。

application.yml(主配置文件)

yaml 复制代码
spring:
  application:
    name: my-application
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    # 数据源配置,这里使用占位符,具体值由环境配置文件提供
    url: ${DB_URL}
    username: ${DB_USER}
    password: ${DB_PASSWORD}

server:
  port: ${SERVER_PORT}

# 通用配置
logging:
  level:
    root: INFO

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

yaml 复制代码
spring:
  profiles: dev
  datasource:
    url: jdbc:mysql://localhost:3306/mydatabase_dev
    username: dev_user
    password: dev_password

server:
  port: 8080

logging:
  level:
    root: DEBUG

application-test.yml(测试环境配置)

yaml 复制代码
spring:
  profiles: test
  datasource:
    url: jdbc:mysql://test-server:3306/mydatabase_test
    username: test_user
    password: test_password

server:
  port: 8888

logging:
  level:
    root: WARN

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

yaml

yaml 复制代码
spring:
  profiles: prod
  datasource:
    url: jdbc:mysql://prod-server:3306/mydatabase_prod
    username: prod_user
    password: prod_password

server:
  port: 80

logging:
  level:
    root: ERROR

在这些配置文件中,我们使用了占位符(如 ${DB_URL}, ${DB_USER}, ${SERVER_PORT})来表示那些可能因环境而异的配置项。在环境特定的配置文件中,我们提供了具体的值。

激活配置文件

要激活特定的环境配置,可以在启动应用程序时通过命令行参数指定,例如:

shell 复制代码
java -jar yourapp.jar --spring.profiles.active=dev

或者在 application.yml 文件中指定默认激活的配置文件:

yaml 复制代码
spring:
  profiles:
    active: dev

这样,Spring Boot 会加载 application.yml 中的通用配置,并覆盖或添加 application-dev.yml 中的开发环境特定配置。对于测试和生产环境,操作相同,只需将 dev 替换为 testprod

参考内容

Spring Boot 多环境如何配置-CSDN博客

相关推荐
梅见十柒15 分钟前
数据结构与算法分析——你真的理解查找算法吗——基于散列的查找(代码详解+万字长文)
java·c语言·c++·笔记·算法·哈希算法·查找算法
JAVA在开发hui22 分钟前
基于 Java 的 Spring Boot 和 Vue 的宠物领养系统设计与实现
java·开发语言·宠物
idealzouhu25 分钟前
Spring Boot 实现文件上传下载功能
java·spring boot·1024程序员节
清风絮柳29 分钟前
13.音乐管理系统(基于SpringBoot + Vue)
vue.js·spring boot·后端·毕业设计·前后端分离·音乐播放系统
小魏冬琅31 分钟前
Spring Boot 应用开发概述
spring boot
VaporGas33 分钟前
Java设计模式-单例模式和工厂模式的思路解析
java·单例模式·设计模式
carl.xu36 分钟前
QNX 7.0.0开发总结
java·大数据·开发语言
2401_858120261 小时前
探索自然之美:SpringBoot驱动的安康旅游网站开发
java·spring boot·旅游
计算机学姐1 小时前
基于uniapp微信小程序的旅游系统
vue.js·spring boot·mysql·算法·微信小程序·uni-app·旅游
2401_854391081 小时前
安康旅游网站:SpringBoot设计与实现详解
spring boot·后端·旅游