1.yml文件

person:

lastName: hello

age:18boss:falsebirth:2017/12/12maps: {k1: v1,k2:12}

lists:-lisi-zhaoliu

dog:

name: 小狗

age:12

2.javaBean

/**

* 将配置文件中配置的每一个属性的值,映射到这个组件中

* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;

* prefix = "person":配置文件中哪个下面的所有属性进行一一映射

*

* 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;

**/@Component

@ConfigurationProperties(prefix= "person")public classPerson {privateString lastName;privateInteger age;privateBoolean boss;privateDate birth;private Mapmaps;private Listlists;private Dog dog;

}

3.pom.xml导入依赖

org.springframework.boot

spring-boot-configuration-processor

true

注:这里可能需要启动一下项目,使之生效

4.@value 注解获取yml配置文件中的数据,以及@Validated进行数据校验

@Component

//@ConfigurationProperties(prefix= "person")

@Validatedpublic classPerson {/**

*

*

* */

//lastName必须是邮箱格式

@Email@Value("${person.last-name}")

privateString lastName;@Value("#{11*2}")

privateInteger age;@Value("true")

privateBoolean boss;privateDate birth;private Mapmaps;private Listlists;private Dog dog;

5.@ConfigurationProperties(prefix = "person") 和 @value的区别

|            | @ConfigurationProperties | @Value |

| ---------- | ------------------------ | ------ |

| 功能               | 批量注入配置文件中的属性             | 一个个指定  |

| 松散绑定(松散语法)   | 支持                                | 不支持    |

| SpEL               | 不支持                            | 支持     |

| JSR303数据校验       | 支持                              | 不支持    |

| 复杂类型封装          | 支持                               | 不支持    |

6.总结

配置文件yml还是properties他们都能获取到值;

如果说,我们只是在某个业务逻辑中需要获取一下配置文件中的某项值,使用@Value;

如果说,我们专门编写了一个javaBean来和配置文件进行映射,我们就直接使用@ConfigurationProperties;

yml读取环境变量_读取yml配置文件中的值相关推荐

  1. python设置环境变量_小白Python进行中

    一.安装 安装包的下载 在官网进行下载,我选用Python3.8.0. Welcome to Python.org​www.python.org 安装 安装的时候可以借鉴该视频. Windows 10 ...

  2. linux中设置环境变量_如何在Linux中设置环境变量

    linux中设置环境变量 Wondering how to set environment variables in Linux? This is exactly what we'll be doin ...

  3. 我的文档目录环境变量_从.env文件中为NodeJS加载环境变量

    作者:Writer Staff 翻译:疯狂的技术宅 原文:https://coderrocketfuel.com/article/how-to-load-environment-variables-f ...

  4. pycharm配置python环境变量_求教大家 pycharm 中,环境变量 path 的问题!

    问题的发现 在 pycharm 里把一个编译好的二进制文件放到/usr/local/bin/,然后在程序里调用. cmmd = "xxx ..." os.system(cmmd) ...

  5. php env 函数不存在,PHP编程:探究Laravel使用env函数读取环境变量为null的问题

    <PHP编程:探究Laravel使用env函数读取环境变量为null的问题>要点: 本文介绍了PHP编程:探究Laravel使用env函数读取环境变量为null的问题,希望对您有用.如果有 ...

  6. shell从oracle中获取变量,shell 如何读取环境变量的值

    笔者最近在开发中遇到新旧版本不兼容的问题,需要我解析的内容更新到最新后对于旧的日志将不支持,所以我需要设置开关来区分是用新的脚本还是原来旧的脚本: 这样我就遇到了比较基础的问题,那就是在shell脚本 ...

  7. 大小写 字符串_C# 读取环境变量,和字符串大小写转换

    string.ToLower() 更改大小写返回的是副本,原来的字符串还是原来的.ToUper()应该也是一样的吧: ToLower()只改变字母大小写,其他的字符不改变: 读取(系统)环境变量时,自 ...

  8. Java读取环境变量

    读取环境变量时可以使用 System.getProperty 或 System.getenv 方法. System.getProperty 方法( JDK1.4 )用来读取针对 JVM 的属性,如程序 ...

  9. 中修改环境变量_超详干货!Linux环境变量配置全攻略

    Linux环境变量配置 在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法. 下面所有例子的环境说明如下: 系统:Ubuntu 14.0 用户名:uusama 需要配置M ...

最新文章

  1. UI设计培训怎么选择就业方向
  2. 知识图谱的关键技术及其智能应用(附PPT)
  3. sybase中游标的使用示例
  4. 海外区域财务共享中心建设
  5. rf框架的缺点_2017热门开源自动化测试框架优缺点对比
  6. Shell脚本——变量
  7. redis快照持久化和aof日志持久化
  8. linux程序循环执行,Linux之循环执行任务
  9. Java Swing Mysql学生成绩管理系统
  10. [Web Chart系列之五] 5. 实战draw2d之figure tooltip 实现
  11. Jmeter与数据库的连接
  12. 2017年高校网络信息安全管理运维挑战赛部分题解
  13. 《计算机系统基础》复习——简答题 01
  14. Easy UI中combobox利用拼音进行筛选
  15. 基于51单片机的扫地小车,扫地机器人设计。 有原理图,程序代码,原文
  16. FORCESPRO的使用教程
  17. Redis学习之Master/Salve十一
  18. 【记录】解决visio流程图复制到word中字符间距改变的问题
  19. C#三点法计算圆心坐标和圆半径
  20. 内存优化总结: ptmalloc、tcmalloc 和 jemalloc

热门文章

  1. 华为nova 5 Pro现身GeekBench数据库:妥妥麒麟980水准
  2. 暴风集团否认暴风TV公司解散:融资事项正在加紧推进中
  3. 4月1日见!小米9王源定制版官宣:透明版背壳加持
  4. OPPO正式公布ColorOS 6系统:Reno新机4月10日首发适配
  5. 拳王公社:从0-1只需掌握这3个重点​,网创再也不缺精准流量
  6. 25岁什么都不会进入软件测试晚吗?别让假努力毁了你...
  7. java大数据组件Zookeeper
  8. MediaCodec 编码时间戳问题
  9. tomcat启动 报tomcat org.apache.catalina.LifecycleException
  10. spring boot 整合Dubbo/Zookeeper