java Spring Boot yml多环境配置

我们项目 线上和线下 环境配置不是特别一样 例如 运行的URL 数据库地址 数据库的账号密码

这些经常是不一样的 如果每次上线钱改 也不是特别方便 甚至可能忘记

那么 进入我们代码中

所谓的多环境 就是在不同的环境下配置不同的值

终端还是在application配置文件中

多环境的话 不是特别一样

它分为两步

分别是 设置环境和应用环境

先将所有的环境配置出来 然后再决定 用哪一个

这里 我们可以分为三个应用部分

开发环境 就是我们平时在本地时做开发用的

测试环境 我们开发完之后 给测试人员或者自己进行程序功能检测时使用的

生产环境 我们项目上线后运行的环境

我们可以在application.yml上这样写

javascript 复制代码
 # 生产环境
server:
  port: 80
---
# 开发环境
server:
  port: 81
---
# 测试环境
server:
  port: 82

细心的朋友可能会发现 当我们将鼠标放在 第一个内容中 变成 1/3

然后 我们放到第二个 就成了 2/3

放到最后一个也会变成 3/3 大家都可以试一下

那么 怎么区分环境呢?

我们将代码改成这样

javascript 复制代码
# 生产环境
spring:
  config:
    activate:
      on-profile: pro
server:
  port: 80
---
# 开发环境
spring:
  config:
    activate:
      on-profile: dev
server:
  port: 81
---
# 测试环境
spring:
  config:
    activate:
      on-profile: test
server:
  port: 82

spring.config.activate.on-profile 可以设置环境代理名

这里 我们设置 开发环境 dev 生产环境 pro 测试环境 test

然后 我们在配置文件最上面编写

javascript 复制代码
spring:
  profiles:
    active: dev
---

指定目前使用我们的开发环境

然后 我们启动项目

日志上也很明显的运行出了我们配置的配置和端口

然后 我们改一下

换到生产环境上去

运行项目

查看日志也是没有任何问题

相关推荐
2301_780789663 小时前
跨平台适配!SDK 游戏盾兼容全终端游戏场景
java·网络·ddos
第九序言T4 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
学长毕设4 小时前
基于springboot的食品仓库管理系统
java·spring boot·后端
步行cgn5 小时前
FormHttpMessageConverter 详解:Spring MVC 中表单数据的读写转换器
java·spring·mvc
龙亘川5 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
金銀銅鐵5 小时前
[Java] 用 CLI 展示 EnumMap 增删键值对时的内部变化
java·源码·ai编程
程序喵大人5 小时前
【C++入门】内存模型与资源管理 - 09 shared_ptr 和 weak_ptr 解决共享,也带来代价
开发语言·c++·资源管理·智能指针·内存模型
秋天的怀念_David5 小时前
第二十二夜 · 数字迷雾
java·程序人生·算法
Raas1006 小时前
AI网关部署方案?从部署到上线全流程
java·开发语言·人工智能·gateway·ai网关·企业级ai网关·企业级ai产品
niucloud-admin6 小时前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php