5、SpringBoot中的环境隔离-Profiles

01、概述

在企业开发中,一般我项目分别如下几种环境:

  • 开发环境
    在这里插入图片描述

  • 测试环境

在这里插入图片描述

  • 生产环境

在这里插入图片描述

分析:在开发中,环境很多,而且每种环境的账号和密码。以及IP地址等都不一样。所以对我们程序开发来说就会存在非常麻烦的事情。如何去做环境隔离。

02、sprignboot的环境隔离

profiles 进行环境隔离和激活,具体步骤如下:

第一步:在resources目录下

新建两个环境文件 applicaiton-dev.ymlapplicaiton-prod.yml

applicaiton-dev.yml

# 属性配置类的
server:
  port: 8083

applicaiton-prod.yml

# 属性配置类的
server:
  port: 8084

第二步:在applicaiton.yml进行激活

spring:
  profiles:
    # 比如激活开发环境
    active: dev

第三步:如何证明成功呢?

比如:激活的dev

[CONSOLE][main]2021-12-15 20:37:45.928 INFO  com.kuangstudy.SpringbootApplication Line:674 - The following profiles are active: dev
[CONSOLE][main]2021-12-15 20:37:47.675 INFO  org.apache.coyote.http11.Http11NioProtocol Line:173 - Starting ProtocolHandler ["http-nio-8083"]

比如:激活的是prod

[CONSOLE][main]2021-12-15 20:38:50.987 INFO  com.kuangstudy.SpringbootApplication Line:674 - The following profiles are active: prod
[CONSOLE][main]2021-12-15 20:38:52.525 INFO  org.apache.coyote.http11.Http11NioProtocol Line:173 - Starting ProtocolHandler ["http-nio-8084"]

03、使用场景

解决不同环境,不同配置的问题:

  • 隔离redis

  • 隔离mysql

    开发环境dev,在application-dev.yml定义如下:

    spring:
      datasource:
        type: com.zaxxer.hikari.HikariDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/kss-web-db?serverTimezone=GMT%2b8&useUnicode=true&characterEncoding=utf-8&useSSL=false
        username: root
        password: mkxiaoer
        hikari:
          connection-timeout: 60000
          validation-timeout: 3000
          idle-timeout: 60000
          login-timeout: 5
          max-lifetime: 60000
          maximum-pool-size: 30
          minimum-idle: 10
          read-only: false
    
    logging:
      level:
        root: debug
    

    生成环境prod,在application-prod.yml定义如下:

     spring:
      datasource:
      type: com.zaxxer.hikari.HikariDataSource
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://127.0.0.1:3306/kss-web-db?serverTimezone=GMT%2b8&useUnicode=true&characterEncoding=utf-8&useSSL=false
      username: root
      password: mkxiaoer
     hikari:
      connection-timeout: 60000
      validation-timeout: 3000
      idle-timeout: 60000
      login-timeout: 5
      max-lifetime: 60000
      maximum-pool-size: 30
      minimum-idle: 10
      read-only: false
    logging:
      level:
        root: debug
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值