Spring-Boot使用很方便,创建系统时,您绝对需要将“设置”和“程序”分开,在Java中,有一个名为application.property/yaml的属性文件,但是你想在哪里找到该文件?不,你必须自己创建它。

Spring Boot允许您外部化配置,以便您可以在不同的环境中使用相同的应用程序代码。您可以使用属性文件,YAML文件,环境变量和命令行参数来外部化配置。属性值可以通过直接注射到你的bean @Value注释,通过Spring的访问Environment抽象,或者被 绑定到结构化对象通过@ConfigurationProperties。Spring Boot使用一种非常特殊的PropertySource顺序,旨在允许合理地覆盖值。按以下顺序考虑属性:

Devtools 主目录上的全局设置属性(当devtools处于活动状态时,配置是~/.spring-boot-devtools.properties)。

properties属性测试。可 用于测试特定应用程序片段[url=https://docs.spring.io/spring-boot/docs/2.1.2.RELEASE/api/org/springframework/boot/test/context/SpringBootTest.html]@SpringBootTest[/url]的 测试注释。

命令行参数。

来自SPRING_APPLICATION_JSON(嵌入在环境变量或系统属性中的内联JSON)的属性。

ServletConfig init参数。

ServletContext init参数。

JNDI属性来自java:comp/env。

Java系统属性(System.getProperties())。

OS环境变量。

一RandomValuePropertySource,只有在拥有性能random.*。

特定于配置文件的应用程序属性在打包的jar(application-{profile}.properties和YAML变体)之外。

打包在jar中的特定于配置文件的应用程序属性(application-{profile}.properties 以及YAML变体)。

打包jar之外的应用程序属性(application.properties以及YAML变体)。

打包在jar中的应用程序属性(application.properties和YAML变体)。

@PropertySource 你@Configuration班上的注释。

默认属性(由设置指定SpringApplication.setDefaultProperties

下面从命令行参数开始:

命令行参数

$ ./gradlew bootRun -Pargs="--myapp.ldap.port=10389"

Java -jar -Dserver.port=10389

OS环境变量:

$ export MYAPP_LDAP_PORT=10389

application.yml

寻找顺序:

当前目录下的/config 子目录

当前目录

类路径/config包

类路径根root

springboot全局常量_Spring-Boot配置属性和环境变量的加载顺序相关推荐

  1. Spring Boot 配置加载顺序详解

    使用 Spring Boot 会涉及到各种各样的配置,如开发.测试.线上就至少 3 套配置信息了.Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发.测试.线上环境使用不同的配置. 在 ...

  2. 3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)

    1.外部配置加载顺序 SpringBoot也可以从以下位置加载配置: 优先级从高到低 高优先级的配置覆盖低优先级的配置,所有的配置会形成互补配置  1.命令行参数 所有的配置都可以在命令行上进行指定 ...

  3. Spring boot外部配置加载顺序

    外部配置加载顺序 Spring boot 可以从以下位置加载配置 优先级从高到低 高优先级的配置,覆盖低优先级的配置 所有的配置,会形成互补配置 官网,给出了17个位置 这里,只介绍常用的11个位置 ...

  4. Spring Boot配置加载顺序

    Spring Boot 不仅可以通过配置文件进行配置,还可以通过环境变量.命令行参数等多种形式进行配置.这些配置都可以让开发人员在不修改任何代码的前提下,直接将一套 Spring Boot 应用程序在 ...

  5. SpringBoot配置加载顺序

    文章目录 前言 一.Spring Boot 配置优先级 二.命令行参数 示例 1 配置文件 示例 2 三.示例分析 前言 Spring Boot 不仅可以通过配置文件进行配置,还可以通过环境变量.命令 ...

  6. Dockerfile文件创建centos:7,配置JDK8的环境变量,与运行springboot的jar包,的镜像

    DockerFile文件创建centos:7 配置JDK8的环境变量 与运行springboot的jar包 准备文件 一:官网下载Linux的JDK包 https://www.oracle.com/j ...

  7. 配置文件加载位置||外部配置加载顺序||自动配置原理

    配置文件加载位置 SpringBoot会从这四个位置全部加载主配置文件:互补配置: 外部配置加载顺序 自动配置原理 1.自动配置原理: 1).SpringBoot启动的时候加载主配置类,开启了自动配置 ...

  8. SpringBoot_配置-外部配置加载顺序

    接下来我们再来看SpringBoot的一个特点,外部配置的加载顺序,也就是说,SpringBoot我们要写一些配置,配置可以写在我们的配置文件,application.properties,放到类路径 ...

  9. Java系统属性和环境变量

    1 什么是环境变量 境变量分为系统环境变量和用户环境变量. 所说的环境变量是指系统环境变量,对所有用户起作用,而用户环境变量只对当前用户起作用. 例如要用java,那么把java的bin目录加入到pa ...

最新文章

  1. 2 关于数据仓库维度数据处理的方法探究系列——无变化维度处理
  2. python中用来回溯异常的模块_为什么Python线缓存会影响回溯模块而不影响...
  3. css3常用方法以及css3选择器
  4. centos7静默搭建oracle11g,Linux静默安装Oracle方法(centos7+oracle11g)
  5. Python学习笔记——基础篇【第七周】———FTP作业(面向对象编程进阶 Socket编程基础)...
  6. BugkuCTF-WEB题计算器
  7. python机器人方向怎么学_学习如何使用 Python 构建你自己的 Twitter 机器人
  8. VC中Radio控件的用法(VC2008)
  9. 《第一行代码(第三版)》kotlin开发Android,学习笔记(进行中ing)
  10. arcgis怎么压缩tif文件_PDF文件怎么进行压缩?教你两招!
  11. Could not resolve dependencies for project
  12. 编写一个应用程序,给出“你”“我”“他”在Unicode表中的位置
  13. chrome单击打开标贴在当前窗口的新标签页设置
  14. 前端下载文件(exe,zip,js等)的几种方式
  15. jQuery 中的 end 方法
  16. 水晶报表 子报表 的应用
  17. 单元格等于计算机日期,《excel表格怎样自动填写日期》 Excel单元格中自动获取当前日期与时间...
  18. Macbook上打开多个终端的方法
  19. sfc /scannow命令如何能用虚拟光驱完成修复?(xp下的办法)
  20. Ubuntu下pip安装CPU版PaddlePaddle

热门文章

  1. Java8 Stream详解~映射(map/flatMap)
  2. Java并发编程实战~Happens-Before 规则
  3. C++学习之路 | PTA乙级—— 1047 编程团体赛 (20 分)(精简)
  4. 计算机考研没奖,备战考研本科期间没有什么奖项,考研复试会有影响吗?
  5. mysql profile 调试sql_SQL Server profile使用技巧
  6. 博客网站源代码_详解SEO布词以及网站排名优化技巧
  7. 追加的英文计算机,Latex同时添加中英文摘要
  8. java 面试什么是类_Java 面试题代码类收集
  9. 现代软件工程 作业 最后一周总结
  10. 华为tsm_台积电:如果不能向华为销售芯片,其他订单可快速取代华为空缺