Springboot yml如何获取系统环境变量的值

yizhihongxing

在Spring Boot yml中获取系统环境变量的值,可以通过${变量名}语法解决。具体步骤如下:

  1. 在 yml 文件中定义需要用到的变量名,例如:

yaml
server:
port: ${SERVER_PORT:8080}

上述代码中,${SERVER_PORT:8080} 表示获取系统环境变量 SERVER_PORT 的值,如果该变量不存在则默认值为 8080

  1. 设置环境变量。在 Windows 中可以使用命令 set 设置环境变量:

bash
set SERVER_PORT=8888

在 Linux / Unix 系统中可以使用命令 export 设置环境变量:

bash
export SERVER_PORT=8888

  1. 在 Spring Boot 应用程序中使用获取到的环境变量,例如:

java
@Value("${server.port}")
private int serverPort;

上述代码中,@Value("${server.port}") 表示获取 yml 文件中定义的 server.port 变量的值,将其注入到变量 serverPort 中。此时,serverPort 的值为 8888

示例 1:

假设在 yml 文件中有以下代码:

logging:
  level:
    org.springframework.web: ${LOG_LEVEL:info}

其中 ${LOG_LEVEL:info} 表示获取环境变量 LOG_LEVEL 的值,如果该变量不存在则默认值为 info

设置环境变量为:

set LOG_LEVEL=debug

在应用程序中,可以使用以下方式获取 logging.level.org.springframework.web 的值:

@Value("${logging.level.org.springframework.web}")
private String loggingLevel;

此时,loggingLevel 的值为 debug

示例 2:

假设在 yml 文件中有以下代码:

spring:
  profile:
    active: ${SPRING_PROFILES_ACTIVE:dev}

其中 ${SPRING_PROFILES_ACTIVE:dev} 表示获取环境变量 SPRING_PROFILES_ACTIVE 的值,如果该变量不存在则默认值为 dev

设置环境变量为:

set SPRING_PROFILES_ACTIVE=prod

在应用程序中,可以使用以下方式获取 spring.profile.active 的值:

@Value("${spring.profile.active}")
private String activeProfile;

此时,activeProfile 的值为 prod

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Springboot yml如何获取系统环境变量的值 - Python技术站

(2)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • JavaScript 自定义html元素鼠标右键菜单功能

    接下来我将详细讲解如何使用 JavaScript 自定义 HTML 元素实现鼠标右键菜单的功能。整个过程可以分为以下几个步骤: 创建自定义元素 绑定右键事件 实现菜单弹出效果 实现菜单操作功能 现在我们来一步步看每个步骤的具体实现。 1. 创建自定义元素 首先,我们需要创建一个 HTML 自定义元素,并指定它的标签名称和模板结构。这里我们以一个 <my…

    other 2023年6月27日
    00
  • Get新技巧:无需QQ显ip版查找好友IP网络地址位置

    Get新技巧: 无需QQ显IP版查找好友IP网络地址位置攻略 简介 在本攻略中,我们将介绍一种无需使用QQ显IP版的方法来查找好友的IP网络地址位置。这种方法可以帮助你获取好友的大致地理位置信息,但请注意,这仅仅是一个大致的估计,不一定准确。 步骤 步骤一:获取好友的IP地址 首先,我们需要获取好友的IP地址。有几种方法可以实现这一点: 通过聊天软件获取IP…

    other 2023年7月30日
    00
  • oracle定义变量

    在Oracle中定义变量是一种常见的操作,它可以帮助我们在SQL语句中使用变量,从而提高SQL语句的灵活性和可重用性。本文将介绍如何在Oracle中定义变量,并提供两个示例说明。 步骤1:定义变量 在Oracle中定义变量,可以使用DECLARE语句。例如,要定义一个名为my_var的变量,可以使用以下代码: DECLARE my_var NUMBER; B…

    other 2023年5月6日
    00
  • js作用域及作用域链概念理解及使用

    JS作用域及作用域链概念理解及使用攻略 1. 作用域的概念 在JavaScript中,作用域是指变量、函数和对象的可访问范围。作用域规定了在代码中的哪些部分可以访问变量、函数和对象。理解作用域对于编写可维护和可扩展的代码非常重要。 JavaScript中有三种作用域:- 全局作用域:在整个程序中都可以访问的变量和函数。- 函数作用域:在函数内部定义的变量和函…

    other 2023年8月19日
    00
  • sqlmapper内容整理

    以下是关于“sqlmapper内容整理”的完整攻略,包含两个示例。 sqlmapper内容整理 sqlmapper是Python库,用于将SQL查询结果映射到Python对象。它提供了一种简单的方式来处理数据库查询结果,使得开发人员更加方便地使用Python来处理数据库数据。以下是sqlmapper的内容整理。 1. 安装sqlmapper 在使用sqlma…

    other 2023年5月9日
    00
  • 九宫图比较常用的多控件布局(GridView)使用介绍

    下面我将详细讲解“九宫图比较常用的多控件布局(GridView)使用介绍”的完整攻略。 简介 GridView 是一种常见的多控件布局,它类似于表格布局,可以让开发者在一个视图中以表格的形式显示多个子控件。GridView 可以横向或纵向展示数据,并添加分页和滚动功能来实现更多的显示效果。在移动应用开发中,九宫图就是一个非常常见的使用 GridView 来实…

    other 2023年6月27日
    00
  • Android判断当前栈顶Activity的包名代码示例

    当我们需要判断当前栈顶Activity的包名时,可以使用Android的ActivityManager类来实现。下面是一个完整的代码示例: import android.app.ActivityManager; import android.content.ComponentName; import android.content.Context; publ…

    other 2023年9月7日
    00
  • elementui可编辑表格

    elementui可编辑表格 前言 在前端开发中,表格的应用非常广泛。而对于特殊的业务需求,一般的表格形式往往不能满足要求。因此,表格的可编辑性逐渐成为前端开发的一个必备要素之一。本文将介绍如何使用Vue框架结合ElementUI组件实现可编辑表格。 开始 首先,我们需要在Vue中引入ElementUI。具体的步骤可以参考ElementUI官网的教程。 接着…

    其他 2023年3月28日
    00
合作推广
合作推广
分享本页
返回顶部