详解SpringBoot配置文件启动时动态配置参数方法

作者:观棋不语的我 时间:2022-03-05 03:20:02 

序言

当我们要同时启用多个项目而又要使用不同端口或者变换配置属性时,我们可以在配置文件中设置${变量名}的变量来获取启动时传入的参数,从而实现了动态配置参数,使启用项目更加灵活

例子


server:
port: ${PORT:50101} #服务端口
spring:
application:
 name: xc‐govern‐center #指定服务名
eureka:
client:
 registerWithEureka: true #服务注册,是否将自己注册到Eureka服务中
 fetchRegistry: true #服务发现,是否从Eureka中获取注册信息
 serviceUrl: #Eureka客户端与Eureka服务端的交互地址,高可用状态配置对方的地址,单机状态配置自己(如果不配置则默认本机8761端口)
  defaultZone: ${EUREKA_SERVER:http://eureka02:50102/eureka/} #向该地址上报心跳信息等
server:
 enable‐self‐preservation: false #是否开启自我保护模式
 eviction‐interval‐timer‐in‐ms: 60000 #服务注册表清理间隔(单位毫秒,默认是60*1000)
instance:
hostname: ${EUREKA_DOMAIN:eureka01}

${PORT:50101}:PORT是变量,当启动时该变量为空则默认50101端口
语法意思是:从该yml配置文件中或者启动配置传入的参数中获取对应属性值

可以类比一下写@Value注解时的格式
@Value(" ${huang.name}")

我们springboot的配置文件格式已经完成了,那么如何启动呢?

idea 点击 run -> edit configuration

详解SpringBoot配置文件启动时动态配置参数方法

设置配置文件参数步骤
1、首先按“+"号添加一个Application(SpringBoot项目添加SpringBoot也可以)
2、设置文件名称(随便起一个就行)
3、主要我画的三个红圈地方
1)、第一个是启动类的类路径
2)、设置要传入配置文件中的变量值

比如我要传入PORT这个变量的值:


server:
port: ${PORT:50101} #服务端口

我们就这样写:
-DPORT=50101(-D可以理解为多个参数之间的分隔符)
多个参数就这样写:
-DPORT=50101 -DEUREKA_SERVER=http://eureka02:50102/eureka/ -DEUREKA_DOMAIN=eureka01

3)、项目名

完成,启动

详解SpringBoot配置文件启动时动态配置参数方法

在这里选择刚刚搞好的设置的名字,然后点击运行就会按照该设置中的参数来运行该项目了

来源:https://blog.csdn.net/qq_42039738/article/details/105507058

标签:SpringBoot,动态,参数
0
投稿

猜你喜欢

  • java实现幸运抽奖功能

    2023-11-27 07:24:16
  • 示例解析java面向对象编程封装与访问控制

    2021-10-18 19:55:19
  • spring boot 动态生成接口实现类的场景分析

    2022-12-14 05:09:33
  • Spring Cloud Alibaba 本地调试介绍及方案设计

    2023-05-26 21:24:26
  • JAVA IDEA 打开assert 设置方式

    2022-08-19 13:48:49
  • Java如何使用ReentrantLock实现长轮询

    2023-11-26 00:09:08
  • Java FineReport报表工具导出EXCEL的四种方式

    2021-07-20 02:58:17
  • C#实现文件上传与下载功能实例

    2022-11-18 07:59:03
  • Flutter Widgets MediaQuery控件屏幕信息适配

    2023-06-29 04:48:21
  • Struts 2中的constant配置详解

    2023-11-10 08:18:18
  • 详解spring cloud eureka注册中心

    2023-11-10 17:54:10
  • SpringCloud如何创建一个服务提供者provider

    2023-08-01 01:56:33
  • Java设计模式之享元模式示例详解

    2022-12-08 22:19:46
  • JVM 运行时数据区与JMM 内存模型

    2022-08-12 10:49:27
  • 使用IDEA创建servlet JavaWeb 应用及使用Tomcat本地部署的实现

    2023-09-11 06:04:09
  • Spring AOP实现功能权限校验功能的示例代码

    2021-10-18 21:32:29
  • C++实现企业职工工资管理系统

    2023-11-02 17:34:34
  • java中的key接口解析

    2023-09-22 14:44:00
  • 详解JVM之运行时常量池

    2022-08-04 03:41:03
  • sharding-jdbc5.0.0实现分表实践

    2023-12-07 10:12:26
  • asp之家 软件编程 m.aspxhome.com