超简单:解析 yml 类型(application.yml)配置文件 、springboot 工程读取 yml 文件中的值
方法三是我觉得最简单的。
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
1. 工程结构:
2. 我要读取 application.yml 中属性 :spring.rocketmq.namesrvAddr 的值。
3. 方法一 :直接读取配置文件
System.getProperty("user.dir") 可以得到根目录 。
File dumpFile=new File(System.getProperty("user.dir") + "/postman-sub-xxx/src/main/resources/application.yml");Map father = Yaml.loadType(dumpFile, HashMap.class);for(Object key:father.keySet()){System.out.println(key+":\t"+father.get(key).toString());}
如果在 yml 中配置为
spring.rocketmq.namesrvAddr: http://xxxxxx-orm ( 标准应该用冒号,用点号只是方便此处取值 )
运行可以在控制台输出:
但这种用法要求是 yml 文件在本工程中,我的情况是聚合工程,跨工程没有读取到。
方法二:
yml 配置文件在 web 工程中,而读取是在 sub 工程中。这种初始化方法 聚合工程也能取到配置文件中的值 。
读取方式如下,直接把 @Value 给在 set 方法就可。nameservAddr 便有值了。
private String nameservAddr;@Value("${spring.rocketmq.namesrvAddr}")public void setNameservAddr(String nameservAddr) {this.nameservAddr = nameservAddr;}
方法三:
类似方法二,但比方法二更简易些。
import lombok.Getter;
import lombok.Setter;...@Getter@Setter@Value("${liuxiao.defualtUser}") // 读取配置文件中的值private String defualtUser;...
不用写 set 方法,直接给注解。
前提是要装一个插件:lombok 。 直接在插件中搜索到它,装上就行了。
附:可组合使用多个注解,读取配置文件中的值
import org.springframework.boot.context.properties.ConfigurationProperties;
如上图,加上第一个红框中注解可以直接从配置文件中读取到 spring.redis 下面所有的配置内容。
如下图,事实上 spring下 redis 下的配置 expiration、isok、notused 的值都已读取到了。
只要本类成员变量的属性名和配置文件中 key 对应且提供了 @Getter @Setter 这2个注解,就可直接把配置文件中 key 的 value 初始化到本类属性 expiration 上了。
如本例中 expiration 的值为 122345786755 已经可以直接使用了。
超简单:解析 yml 类型(application.yml)配置文件 、springboot 工程读取 yml 文件中的值相关推荐
- c++读取txt文件中的数字_SpringBoot 多种读取配置文件中参数的方式
点击上方☝SpringForAll社区 轻松关注!及时获取有趣有料的技术文章 本文来源:http://www.mydlq.club/article/61/ . 一.简介 . 1.SpringBoot ...
- XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 查找校验xml文件中相同的节点属性值 java遍历文件夹解析XML
XML解析 (JAVA解析xml文件)java+Dom4j+Xpath xml文件解析根据子节点得到父节点 以及查找xml文件中相同的节点属性值 项目背景:这是本人实习中所碰到的项目,当时感觉很棘手, ...
- @Value取application.properties文件中的值
问题描述 在使用@Value取application.properties文件中的值时,取出的值为null 问题解决: 1. 需要在所在的类上加@Component,把普通pojo实例化到spring ...
- SpringBoot、SpringCloud读取bootstrap.yml或者application.properties配置文件中的参数
问题还原: 在做项目时,需要配置所上传Excel文件的存储路径,用于将Excel文件存储到所配置的路径下.此路径可以写死到代码里,但是不方便:也可存到数据库表中,但是麻烦:我们一般都是配置到boots ...
- python设置ini文件中的值_5分钟掌握Python中常见的配置文件
为什么要写配置文件 在开发过程中,我们常常会用到一些固定参数或者是常量.对于这些较为固定且常用到的部分,往往会将其写到一个固定文件中,避免在不同的模块代码中重复出现从而保持核心代码整洁. 这个固定文件 ...
- SpringBoot内部配置:“application.properties配置”和”使用XML配置”,读取属性文件中的内容,日志配置,Profile配置(学习:SpringBoot实战)
1 SpringBoot内部配置 1.1.修改端口和应用上下文 server.port=9090 server.context-path=/helloboot Spring Boot也可以使用yml进 ...
- 使用spring最简单地读取properties文件中的内容
相比传统的读取propertis文件内容,使用spring框架会更加简单快捷 1. 第一步,在spring的配置文件中,将propertis文件加载到spring容器 2. 加载了配置文件后,只需要在 ...
- log4j记录不同的日志_使用log4j将不同类型的日志信息记录到不同的文件中
使用场景:如需要进行性能调优,需要将执行时间单独输入到一个日志文件中 其中,log4j的配置 log4j.logger.console= DEBUG, test1 log4j.appender.tes ...
- 字体文件解析 c语言,如何正确地从C语言的文件中读取某些字符串?
您试图从文件中读取的内容并不简单,但可以通过设置一个标志来处理,该标志告诉您是否已经看到 'a' 或 'b' ,跳过所有空白和 ':' 字符,将所有其他字符存储在缓冲区中,根据需要重新分配,然后在第二 ...
最新文章
- SpringMVC上传文件解析request请求为空获取不到数据问题
- VS调试技巧之附加进程
- metasploit 中 exploit模块check方法简介
- 【附代码】如何在私有链上编写、部署与以太坊进行交互的智能合约
- 第四冠!腾讯AI「绝艺」斩获世界智能围棋公开赛冠军
- [转载]EXT核心API详解(一)-Ext
- ios 动画 隐藏tabbar_UITabBarViewController 的底部 tabBar 隐藏
- 前端学习(1332):mongodb安装
- Web应用功能测试测试点
- JUC阻塞队列BlockingQueue讲解
- 一周愣降900元!这款iPhone不值了?
- 游戏及开发人员的认识
- php本科毕设,基于php的新闻发布系统1本科毕设论文
- 基于企业服务总线的主数据管理系统(MDM)集成方案
- python中的value是什么意思_python中p-value的实现方式
- MyBatis学习笔记之三
- wma格式怎么转换mp3,4种方法超快学
- 【转】 浅谈Radius协议
- Fairplay DRM与混淆实现的研究
- 开源中国源码学习(六)——ButterKnife的使用
热门文章
- 【编译原理】为什么编程语言中,标识符不能以数字开头?
- JAVA 捕获异常所遇BUG
- 数据结构 - 链表(双向链表学习)
- 【牛客 - 696D】小K的雕塑(dp,鸽巢原理,01背包类问题)
- 【SPOJ - QTREE2】Query on a tree II(LCA,倍增)
- 【HihoCoder - 1881】特殊任务 (树形图,遍历)
- Django框架(展示图书信息简易版)
- oracle idl_ub1$,system表空间急剧增大原因分析
- php如何判断文件的内容,php 判断文件内容是否存在的方法
- cass生成曲线要素文件_几种常见的CASS字体异常问题,教你如何解决