我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Springboot yml怎么获取系统环境变量的值

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Springboot yml怎么获取系统环境变量的值

这篇文章主要介绍了Springboot yml怎么获取系统环境变量的值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Springboot yml怎么获取系统环境变量的值文章都会有所收获,下面我们一起来看看吧。

yml获取系统环境变量的值

注意,这里说的是获取系统环境变量的值,譬如Windows里配置的JAVA_HOME之类的,可以直接在Springboot的配置文件中获取。

我们经常使用一些docker管理平台,如DaoCloud、rancher之类的,里面都可以配置环境变量,目的当然也就是供程序获取。使用环境变量的话,可以避免在application.yml里直接明文编写数据库密码、appkey之类的。

用法很简单

譬如我系统环境变量里,配置的有M2_HOME

Springboot yml怎么获取系统环境变量的值

那么就可以在application.yml使用如下

maven:  path: ${M2_HOME}

然后在代码里就能根据maven.path取到环境变量配置的值了。

当然还有一些高级用法,譬如你忘了配置环境变量了,上面的写法就取不到值了,可以使用

maven:  path: ${M2_HOME:abc}

使用冒号分隔,当环境变量中M2_HOME为空时,就会使用abc来填充了。

通过上面的方式,就可以做到不明文编码一些敏感密码之类的,只配置在环境变量里,就能避免所有开发人员看到了。 

另外加一个小的其他知识,就是如何给static属性赋初值,之前都知道@Value是可以给普通变量赋值的,那么static的需要用下面的方式。

@Componentpublic class StaticProperties {     public static String CUSTOM_NAME;     @Value("${custom.name}")    public void setCustomName(String customName) {        CUSTOM_NAME = customName;    } }

读取环境变量和配置信息的方法

核心的配置文件读取方式

核心配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法有两种,都比较简单。

例如,我的application.properties文件中有如下内容:

local.ip=127.0.0.1local.port=8080

使用Environment方式

@Componentpublic class UserConfig {    @Autowired    private Environment env;    public void show(){        System.out.println("local.ip="+env.getProperty("local.ip"));    }}

使用@Value方式(常用)

@Componentpublic class UserConfig {    @Value("${local.port}")    private String localPort;    public void show(){        System.out.println("localPort="+localPort);    }}

自定义文件的读取

有时候,因项目的需要,需要自定义配置文件来存放一些自定义的信息(尽量不破坏核心文件的原生态),比如,我们在

在resources/config目录下创建配置文件hk.properties

resources/config/hk.properties内容如下:

name=hksex=1

创建管理配置的实体类:

@Component@PropertySource(value = "classpath:config/hk.properties")public class HKConfig {    @Value("${name}")    private String name;    @Value("${sex}")    private String sex;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getSex() {        return sex;    }    public void setSex(String sex) {        this.sex = sex;    }}

yml的配置文件

对于像如下结构的内容:

jdbc:    name:hk    password:123

对于这类,获取方式和上面一样,jdbc.name即可。

关于“Springboot yml怎么获取系统环境变量的值”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Springboot yml怎么获取系统环境变量的值”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Springboot yml怎么获取系统环境变量的值

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Springboot yml怎么获取系统环境变量的值

这篇文章主要介绍了Springboot yml怎么获取系统环境变量的值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Springboot yml怎么获取系统环境变量的值文章都会有所收获,下面我们一起来看看吧。y
2023-06-29

java获取和设置系统变量问题(环境变量)

这篇文章主要介绍了java获取和设置系统变量问题(环境变量),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-01-01

Shell eval怎么用变量获取环境变量

这篇文章主要讲解了“Shell eval怎么用变量获取环境变量”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Shell eval怎么用变量获取环境变量”吧!场景系统中存在环境变量 USER=
2023-06-09

VB.NET中怎么获取环境变量

本篇文章为大家展示了VB.NET中怎么获取环境变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Windows系统将很多重要的信息(比如计算机名和用户名)存储在环境变量中。访问这些变量来获取这些信息
2023-06-17

Linux系统怎么修改环境变量

本篇文章为大家展示了Linux系统怎么修改环境变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1、在/etc/profile文件中添加变量【对所有用户生效(永久的)】 用VI在文件/etc/pr
2023-06-28

win10系统怎么添加环境变量

这篇文章主要介绍了win10系统怎么添加环境变量,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.登录win10系统,右键开始菜单,打开控制面板。2.在打开的控制面板窗口中,
2023-06-28

win8/win8.1系统怎么配置java环境变量?配置java环境变量的方法

配置java环境变量的方法:1、在你的计算机上右击,选择其中的属性;2、作出如下图所示的选择;3、选择高级,再选择环境变量;4、在这里添加一个java_home就可以了,如下图所示.添加的值就是你的jre的位置;5、还要改变一下你的path
2022-06-04

Linux怎么添加mysql系统环境变量

这篇文章主要讲解了“Linux怎么添加mysql系统环境变量”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux怎么添加mysql系统环境变量”吧!Linux添加mysql系统环境变量昨
2023-07-05

Win10系统Maven环境变量怎么配置

这篇文章主要介绍了Win10系统Maven环境变量怎么配置的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Win10系统Maven环境变量怎么配置文章都会有所收获,下面我们一起来看看吧。具体方法如下:第一步:在我
2023-06-26

CentOS系统中怎么配置tomcat环境变量

本篇文章给大家分享的是有关CentOS系统中怎么配置tomcat环境变量,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。下面设置CentOS系统中tomcat相关的环境变量]#
2023-06-16

Go获取与设置环境变量的方法是什么

这篇文章主要讲解了“Go获取与设置环境变量的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Go获取与设置环境变量的方法是什么”吧!01 从安装 Go 说起其实不止是安装 Go,其他
2023-06-25

怎么在Ubuntu系统中安装JDK环境变量

这篇文章将为大家详细讲解有关怎么在Ubuntu系统中安装JDK环境变量,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。具体步骤如下:1、首先,下载jdk,选择第一个,网站是Oracle Jdk
2023-06-07

win7系统下怎么为python配置环境变量

这篇文章给大家分享的是有关win7系统下怎么为python配置环境变量 的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体方法如下:1、打开计算机属性,点击高级系统设置;2、点击环境变量,点击新建,变量名输入大写
2023-06-13

怎么在linux系统中配置java环境变量

本篇文章给大家分享的是有关怎么在linux系统中配置java环境变量,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UN
2023-06-14

怎么设置与查看Linux系统中的环境变量

这篇文章主要介绍了怎么设置与查看Linux系统中的环境变量,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。环境变量环境变量是以键值对的形式实现的,是在整个系统范围内都可用的变量
2023-06-15

Linux系统下怎么修改环境变量PATH路径

这篇文章主要介绍“Linux系统下怎么修改环境变量PATH路径”,在日常操作中,相信很多人在Linux系统下怎么修改环境变量PATH路径问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统下怎么修改环
2023-06-13

Linux系统中怎么修改环境变量PATH路径

Linux系统中怎么修改环境变量PATH路径,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。电脑中必不可少的就是操作系统。而Linux的发展非常迅速,有赶超微软的趋势。这里介
2023-06-16

Linux系统中怎么清理文件和清理环境变量

本篇内容主要讲解“Linux系统中怎么清理文件和清理环境变量”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统中怎么清理文件和清理环境变量”吧!使用 Find 命令来帮你找到那些需要清
2023-06-12

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录