当前位置: 首页 > news >正文

SprintBoot打包及profile文件配置

打成Jar包

  • 需要添加打包组件将项目中的资源、配置、依赖包打到一个jar包中,可以使用maven的package;
  • 运行: java -jar xxx(jar包名)

操作步骤

  • 第一步: 引入Spring Boot打包插件

    <!--打包的插件-->
    <build><!--修改jar的名字--><finalName>ROOT</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins>
    </build>
    
  • 第二步: 执行命令
    # 清理、打包 跳过测试
    mvn clean package -Dmaven.test.skip=true

  • 第三步: 运行

    java -jar xxx.jar

  • 第四步: 浏览器访问 http://localhost:8080/xxx

小结

  • 打包jar的步骤
    • 在pom文件添加打包的插件
      • 在控制台进入到模块里面执行 mvn clean package -Dmaven.test.skip=true
        • 执行jar java -jar xxx.jar

SpringBoot :profile配置

说明

我们在开发Spring Boot应用时,通常同一套程序会被安装到不同环境,比如:开发、测试、生产等。其中数据库地址、服务器端口等等配置都不同,如果每次打包时,都要修改配置文件,那么非常麻烦。profile功能就是来进行动态配置切换的。

详解

1) profile是用来完成不同环境下,配置动态切换功能的。

2) profile配置方式

  • 多profile文件方式:提供多个配置文件,每种文件代表一种环境。
    • application-dev.properties/yml开发环境
    • application-test.properties|yml测试环境
    • application-pro.properties|yml生产环境
  • 一个yml文件配置多环境方式:
    • 在yml中使用 — 分隔不同配置

3) profile激活方式

  • 配置文件: 再配置文件中配置:spring.profiles.active=dev
  • 虚拟机参数:在VM options 指定:-Dspring.profiles.active=dev
  • 命令行参数:java –jar xxx.jar --spring.profiles.active=dev

演示

多文件方式

1、准备项目环境:新建项目、依赖、启动类

2、新建配置文件

application-dev.properties

server.port=8082

application-test.properties

server.port=8083

application-pro.properties

server.port=8084

3、此时启动项目发现端口还是8080,因为没有激活配置。

4、新建application.properties,激活配置

spring.profiles.active=dev

此时,使用的就是application-dev.properties配置文件的内容。
在这里插入图片描述

yml多文档

新建application.yml

---
server:port: 8082
spring:profiles: dev
---
server:port: 8083
spring:profiles: test
---
server:port: 8084
spring:profiles: pro
---
# 激活配置
spring:profiles:active: test

虚拟机参数

方式1: VM Options 参数:
方式2:Program arguments:
在这里插入图片描述

命令行参数

E:\>java -jar springboot-profile-1.0-SNAPSHOT.jar --spring.profiles.active=test

小结

  • profile文件的作用,有几种方式
    • profile: 配置多环境的
      • 多个properties文件
      • 一个yml文件使用—分割
http://www.lryc.cn/news/37307.html

相关文章:

  • java面试-java集合
  • Node.js简介
  • 每天学一点之Lambda表达式
  • Raft分布式共识算法学习笔记
  • 中介者模式
  • Kaggle赛题解析:Google手语识别
  • 什么是ChatGPT?
  • 深入理解Zookeeper的ZAB协议
  • opencv-图像几何处理
  • [前端笔记030]vue之hello、数据绑定、MVVM、数据代理、事件处理、计算属性和监视属性
  • 每天学一点之注解、元注解
  • STA环境
  • 嵌入式系统实践 12 ——基于ARM汇编 Keil5 MSP432 P401R开发板
  • 【密码学篇】密码行业标准汇总(GM)
  • 桌面文件删除后没有在回收站原因和恢复方法
  • 什么是业务运营?关键组成部分有哪些?
  • 腾讯云新用户怎么配置服务器的方法教程
  • windows 11系统,通过ip地址远程连接连接ubuntu 22.04系统(共同局域网下,另一台主机不需要联网)
  • 头脑风暴(一):Controller层前端传参接收;在Service层实现类中?为何要build相关构建器?添加套餐业务分析
  • vue-cropper 拖动图片和截图框
  • [Linux基础]history相关的环境变量设置
  • 怎么给电脑分盘与合并磁盘?教你三招
  • HCIP-5.4OSPF路由聚合、缺省路由
  • 【数据结构】——树与二叉树
  • 等离子纳秒高压脉冲电源维修HVP-20 P
  • JavaScript内改变this指向
  • Cobalt Strike---(2)
  • docker的命令使用和相关例子
  • 23模式--代理模式
  • 【Linux】信号的产生、保存、捕捉处理 (四种信号产生、核心存储、用户态与内核态、信号集及其操作函数)