8、SpringBoot_多环境开发

news2024/11/23 19:15:59

二、多环境开发

1.概述

  • 概述:开发环境、测试环境、生产环境

  • 分类

    • 开发环境

      spring:
        datasource:
          druid:
            url: jdbc:mysql://localhost:3306/springboot_ssm
            username: root
            password: 123456
            driver-class-name: com.mysql.cj.jdbc.Driver
      
    • 测试环境

      spring:
        datasource:
          druid:
            url: jdbc:mysql://测试环境服务器地址:3306/springboot_ssm
            username: root
            password: 123456
            driver-class-name: com.mysql.cj.jdbc.Driver
      
    • 生产环境

      spring:
        datasource:
          druid:
            url: jdbc:mysql://阿里云地址:3306/springboot_ssm
            username: root
            password: adminroot
            driver-class-name: com.mysql.cj.jdbc.Driver
      

2.单文件控制多环境开发

  • 单文件多环境的使用

    server:
      port: 8082
    
  • 配置多环境的时候使用 — 隔开

    server:
      port: 8082
    ---
    server:
      port: 8888
    
  • 使用 spring profiles 区分是什么环境

    spring:
      profiles: dev
    server:
      port: 8082
    ---
    spring:
      profiles: test
    server:
      port: 8888
    
    ---
    spring:
      profiles: prod
    server:
      port: 9999
    
  • 设置启动环境

    spring:
      profiles:
        active: test
    ---
    #开发环境
    spring:
      profiles: dev
    server:
      port: 8082
    ---
    #测试环境
    spring:
      profiles: test
    server:
      port: 8888
    
    ---
    #生产环境
    spring:
      profiles: prod
    server:
      port: 9999
    
    

3.properties 多文件多环境开发

  • 图示

    在这里插入图片描述

  • 主配置文件

    spring.profiles.active=dev
    
  • 开发环境

    # 应用名称
    spring.application.name=springboot-dev
    # 应用服务 WEB 访问端口
    server.port=8082
    
  • 测试环境

    # 应用名称
    spring.application.name=springboot-test
    # 应用服务 WEB 访问端口
    server.port=8888
    
  • 生产环境

    # 应用名称
    spring.application.name=springboot-prod
    # 应用服务 WEB 访问端口
    server.port=9999
    

4.yml 多文件多环境开发

  • 图示

    在这里插入图片描述

  • 新建主配置

    spring:
      profiles:
        active: test
    
  • 开发环境

    server:
      port: 8082
    
  • 测试环境

    server:
      port: 8888
    
  • 生产环境

    server:
      port: 9999
    

5.多环境开发抽取独立配置

  • 背景:因为全部把配置配置到一个大文件里面,很多很乱,所以有的公司就使用拆分配置的方式来解决独立的配置耦合太严重的问题

  • 图示

    在这里插入图片描述

  • 如果需要用到devredis 中的 redis 配置,直接在主配置中引入即可

    spring:
      profiles:
        active: dev
        include: devmysql,devredis
    
  • 这种切换还是存在问题,每次都得修改 include 中的value 值,所以,2.4版本之后新加了一个 group,将dev和test分组,只需要改变active值对应group的值

    spring:
      profiles:
        active: dev
        group:
          "dev": devmysql,devredis
          "test": testmysql,testredis
    

6.总结

  • 总结
    • 实际开发中,多环境开发很常用
    • dev 开发环境
    • test 测试环境
    • prod 生产环境

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1045212.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[WUSTCTF2020]CV Maker 文件头检查

这道很简单 首先注册登入 很显然是我们文件上传 我们直接随便上传一个看看 报错了我们去看看 这个 exif是什么 就是检查文件头 那我们直接修改文件头上传即可 GIF89a <script language"php">eval($_POST[cmd]); </script> 上传修改php即可

全网最全Python系列教程(非常详细)---字符串讲解(学Python入门必收藏)

&#x1f9e1;&#x1f9e1;&#x1f9e1;这篇是关于Python中字符串的讲解&#xff0c;涉及到以下内容&#xff0c;欢迎点赞和收藏&#xff0c;你点赞和收藏是我更新的动力&#x1f9e1;&#x1f9e1;&#x1f9e1; 本文将从以下几个方面展开对字符串的讲解&#xff1a; 1、字…

如何在Python中实现安全的密码存储与验证

在现代互联网时代&#xff0c;安全性已经成为一个非常重要的问题。在我们的日常生活中&#xff0c;我们会使用许多网站和应用程序&#xff0c;而这些网站和应用程序通常要求我们提供密码来保护我们的个人信息。然而&#xff0c;密码泄露事件时有发生&#xff0c;我们经常听到关…

@ConditionalOnProperty配置属性作为条件

1.ConditionalOnProperty​做什么用的&#xff1f; 主要是根据配置参数&#xff0c;来决定是否需要创建这个bean&#xff0c;这样就给了我们一个根据配置来控制Bean的选择的手段了&#xff0c;不启用只需要更改配置即可。 ​ConditionalOnProperty​源码 package org.springf…

进程管理--CFS调度器(1)

介绍 CFS&#xff08;Completely Fair Scheduler&#xff0c;完全公平调度器)用于Linux系统中普通进程的调度。它给cfs_rq&#xff08;cfs的run queue&#xff09;中的每一个进程设置一个虚拟时钟&#xff0c;vruntime。如果一个进程得以执行&#xff0c;随着时间的增长&#…

Pycharm在进行debug时出现collecting data如何解决?

Pycharm在进行debug时变量界面出现collecting data&#xff0c;问题如下&#xff1a; 解决方法&#xff1a;打开Setting界面&#xff0c;在Python Debugger选项中勾选下图中的Gevent compatible即可。

iOS CocoaPod 打包:SDK开发、Pod组件生成等

参考链接&#xff1a;CocoaPod打包 SDK开发 - 简书 iOS非集成打包&#xff1a;依赖cocoapods的Swift静态库打包、脚本合并真机与模拟器 - 简书 iOS 组件化开发----pod私有库制作及使用_ios组件化开发-CSDN博客 1.生成pod包命令 pod lib create testTools 如果提示&#xf…

img 固定宽高 图像不拉伸 显示图片中间部分

.m-sd-chat-select-avatar-img{width: 100px;height: 125px;object-fit: cover;border-radius: 6px;cursor: pointer;} 使用后&#xff1a; 使用前&#xff1a;

Django 联表查询操作

在日常的开发中&#xff0c;常常需要对多张数据表同时进行数据查询。多表查询需要在数据表之间建立表关系才能够实现。一对多或一对一的表关系是通过外键实现关联的&#xff0c;而多表查询分为正向查询和反向查询。 表模型结构 以歌手表、专辑表、单曲表查询为例子。 歌手与专…

RK3588 VDD_LOGIC电源PCB设计注意事项

RK3588 VDD_LOGIC电源PCB设计 1、VDD_LOGIC的覆铜宽度需满足芯片的电流需求&#xff0c;连接到芯片电源管脚的覆铜足够宽&#xff0c;路径不能被过孔分割太严重&#xff0c;必须计算有效线宽&#xff0c;确认连接到CPU每个电源PIN脚路径都足够。 2、如图1所示&#xff0c;原理…

Scrapy-应对反爬虫机制

参考自https://blog.csdn.net/y472360651/article/details/130002898 记得把BanSpider改成自己的项目名&#xff0c;还有一个细节要改一下&#xff0c;把代码user换成user_agent 禁止Cookie 在Scrapy项目中的settings文件&#xff0c;可以发现文件中有以下代码: COOKIES_ENA…

红黑树-自平衡二叉搜索树

一、简介 红黑树&#xff08;Red-Black Tree&#xff09;是一种自平衡的二叉搜索树&#xff0c;它的节点可以是红色或黑色。这个颜色的设计是为了满足红黑树的五个关键性质&#xff0c;确保树保持平衡和高效地支持插入、删除和搜索操作。 以下是红黑树的五个关键性质&#xf…

【Unity3D日常开发】Unity3D中Quality的设置参考

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好&#xff0c;我是佛系工程师☆恬静的小魔龙☆&#xff0c;不定时更新Unity开发技巧&#xff0c;觉得有用记得一键三连哦。 一、前言 这篇文章就来讲一下Quality的设置&#xff08;Unity版本&#…

浪潮信息被Gartner评为全球文件存储标杆厂商

近日&#xff0c;国际权威研究机构 Gartner 正式发布《2023年存储和数据保护技术成熟度曲线报告》&#xff08;(Hype Cycle for Storage and Data Protection Technologies, 2023&#xff0c;以下简称“报告”&#xff09;&#xff0c;基于对市场应用的前瞻洞察和多年的技术精耕…

518抽奖软件,一键打印中奖名单的方法和用途

518抽奖软件简介 518抽奖软件&#xff0c;518我要发&#xff0c;超好用的年会抽奖软件&#xff0c;简约设计风格。 包含文字号码抽奖、照片抽奖两种模式&#xff0c;支持姓名抽奖、号码抽奖、数字抽奖、照片抽奖。(www.518cj.net) 一键打印中奖名单 主窗口上按 CtrlP 打开 {…

在关系型数据库中储存树形结构

adjacency list 邻接表显然是最简单的方式&#xff0c;也是在实践中经常用到的。其储存节点以及直接父节点来进行储存树形结构 邻接表结构简单&#xff0c;查询修改节点的直接父节点都很容易。然而如果返回父节点下的所有节点之类的跨层操作那就很麻烦了&#xff0c;需要频繁…

matlab实现杨氏双缝干涉实验可视化界面

关于杨氏双缝干涉实验的条纹光强理论推导和matlab绘图可以参考下面的链接&#xff1a;杨氏双缝干涉实验matlab实现 接下来利用GUI实现可视化界面。 一、GUI GUIDE简介 1、在命令行窗口输入小写的guide可以自动弹出fig窗口。 2、界面的左侧是常用的工具&#xff0c;鼠标悬停…

利用串口示波器调试PID参数

PID调试最麻烦的是参数调整&#xff0c;需要花费大量时间&#xff0c;如果每调整一次都要修改代码重新编译烧录&#xff0c;效率很低&#xff0c;推荐串口示波器与rt-thead finsh进行调试 推荐使用FireWater数据引擎 定时上报数据&#xff0c;rt_kprintf不支持浮点数据打印&a…

从零开始之了解电机及其控制(6)六步换向法

引导&#xff1a;六步换向的本质是&#xff1f; 因为无刷电机有三根线&#xff0c;而H桥可以将负载连接到正电压或者地&#xff0c;于是用三对MOS管组成的H桥驱动电机&#xff0c;称为半桥驱动。 无刷电机的优点如下&#xff1a; 首先&#xff0c;由于所有三个电机相位都通过…

xcode15下载ios17模拟器失败

升级到xcode15后需要安装ios17模拟器 但是在下载过程中会遇到报错 如下图这种 网上搜索了一下发现有人遇到过无法下载的问题&#xff0c;并且在apple官网也有人提出类似问题 https://developer.apple.com/forums/thread/737648 解决方案就是从https://developer.apple.com/do…