博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ymal格式转Properties格式
阅读量:6571 次
发布时间:2019-06-24

本文共 1155 字,大约阅读时间需要 3 分钟。

  hot3.png

1、把yaml读到Map里

2、把Map转换为Properties格式

第二部分转换的核心代码如下

摘自 org.springframework.beans.factory.config.YamlProcessor

 

private void buildFlattenedMap(Map
result, Map
source, String path) { for (Entry
entry : source.entrySet()) { String key = entry.getKey(); if (StringUtils.hasText(path)) { if (key.startsWith("[")) { key = path + key; } else { key = path + "." + key; } } Object value = entry.getValue(); if (value instanceof String) { result.put(key, value); } else if (value instanceof Map) { // Need a compound key @SuppressWarnings("unchecked") Map
map = (Map
) value; buildFlattenedMap(result, map, key); } else if (value instanceof Collection) { // Need a compound key @SuppressWarnings("unchecked") Collection
collection = (Collection) value; int count = 0; for (Object object : collection) { buildFlattenedMap(result, Collections.singletonMap("[" + (count++) + "]", object), key); } } else { result.put(key, value != null ? value : ""); } } }

 

转载于:https://my.oschina.net/ois/blog/1794123

你可能感兴趣的文章
VS2010与.NET4系列 8. ASP.NET 4 Web Forms的URL路由
查看>>
C#代码生成xml文档—C#基础回顾
查看>>
Java利用随机数生成字母
查看>>
《鸟哥私房菜》基础篇凌乱的笔记
查看>>
Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)
查看>>
vmware命令集合
查看>>
[白开水]-shell-从数值N累加到M(N<M)-知识点
查看>>
STM32系统滴答_及不可不知的延时技巧 - (下)
查看>>
C与C++数组输出的区别
查看>>
OpenGL Shader in OpenCASCADE
查看>>
rz sz 用法
查看>>
回顾2017,展望2018
查看>>
使用jQuery来改善源代码浏览体验
查看>>
Hadoop软件的安装
查看>>
如何从一个小白入行到互联网成为一名高手?
查看>>
美好的一天(Weather Live)
查看>>
maven的test使用main的resources
查看>>
各类免费API接口分享
查看>>
聊聊springboot jest autoconfigure
查看>>
【微服务】之一:第一个SpringBoot项目
查看>>