idea springboot 如何支持数据库配置 redis配置 支持不同环境(uat验证环境、测试环境)切换

在Spring Boot中,可以通过配置文件来支持数据库和Redis的配置,并支持不同环境的切换。以下是一些常用的方法:

  1. 创建配置文件:在src/main/resources目录下创建以下配置文件:

    • application.properties:通用配置文件
    • application-uat.properties:uat验证环境配置文件
    • application-test.properties:测试环境配置文件
  2. 配置数据库:在配置文件中添加以下属性:

    # application.properties
    # 数据库配置
    spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
    spring.datasource.username=root
    spring.datasource.password=123456
    

    # application-uat.properties
    # uat环境数据库配置
    spring.datasource.url=jdbc:mysql://uat-host:3306/mydatabase
    spring.datasource.username=uat-user
    spring.datasource.password=uat-password
    

    # application-test.properties
    # 测试环境数据库配置
    spring.datasource.url=jdbc:mysql://test-host:3306/mydatabase
    spring.datasource.username=test-user
    spring.datasource.password=test-password
    

  3. 配置Redis:在配置文件中添加以下属性:

    # application.properties
    # Redis配置
    spring.redis.host=localhost
    spring.redis.port=6379
    spring.redis.password=123456
    

    # application-uat.properties
    # uat环境Redis配置
    spring.redis.host=uat-host
    spring.redis.port=6379
    spring.redis.password=uat-password
    

    # application-test.properties
    # 测试环境Redis配置
    spring.redis.host=test-host
    spring.redis.port=6379
    spring.redis.password=test-password
    

  4. 创建配置类:创建一个Config类来加载配置文件,并通过@ConditionalOnProperty注解来根据环境切换配置。示例代码如下:

    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    
    @Configuration
    @PropertySource("classpath:application.properties")
    @ConditionalOnProperty(name = "spring.profiles.active", havingValue = "uat", matchIfMissing = true)
    public class UatConfig {
    }
    

    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    
    @Configuration
    @PropertySource("classpath:application.properties")
    @ConditionalOnProperty(name = "spring.profiles.active", havingValue = "test")
    public class TestConfig {
    }
    

    注意:@ConditionalOnProperty注解中的"spring.profiles.active"属性值应与spring.profiles.active配置保持一致。

  5. 启动应用程序:启动应用程序时,通过设置spring.profiles.active属性来指定使用的配置文件。例如,使用-Dspring.profiles.active=uat启动应用程序,即可使用uat环境的数据库和Redis配置。

通过以上步骤,你可以在不同环境中切换数据库和Redis配置。在实际开发中,可以根据需要添加更多的配置文件和配置类来支持更多的环境。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 16:28:03       99 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 16:28:03       107 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 16:28:03       90 阅读
  4. Python语言-面向对象

    2024-07-10 16:28:03       98 阅读

热门阅读

  1. MyBatisPlus

    2024-07-10 16:28:03       22 阅读
  2. Android 通用视频组件开发

    2024-07-10 16:28:03       29 阅读
  3. 目标检测算法详细介绍!

    2024-07-10 16:28:03       22 阅读
  4. 中医四大经典之 No.1

    2024-07-10 16:28:03       27 阅读
  5. 支持向量机(Support Vector Machine,SVM)

    2024-07-10 16:28:03       30 阅读
  6. vue2 、 vue3首屏优化,减少白屏时间

    2024-07-10 16:28:03       23 阅读
  7. 对于配置LLM,集显和独显的具体区别和影响

    2024-07-10 16:28:03       27 阅读
  8. Perl 语言入门学习

    2024-07-10 16:28:03       28 阅读
  9. 单例模式之静态内部类与枚举类

    2024-07-10 16:28:03       26 阅读
  10. 爬虫技术抓取网站数据

    2024-07-10 16:28:03       26 阅读
  11. [Go] 字符串遍历数据类型问题

    2024-07-10 16:28:03       26 阅读
  12. 51单片机第26步_单片机工作在空闲模式

    2024-07-10 16:28:03       25 阅读
  13. QT调节屏幕亮度

    2024-07-10 16:28:03       28 阅读
  14. Spring Boot手写starter

    2024-07-10 16:28:03       28 阅读