Typesafe的Config库,纯Java写成、零外部依赖、代码精简、功能灵活、API友好。支持Java properties、JSON、JSON超集格式HOCON以及环境变量。

public class Configure {private final Config config;public Configure(String confFileName) {config = ConfigFactory.load(confFileName);}public Configure() {config = ConfigFactory.load();}public String getString(String name) {return config.getString(name);}
}

ConfigFactory.load()会加载配置文件,默认加载classpath下的application.conf,application.json和application.properties文件。当然也可以调用ConfigFactory.load(confFileName)加载指定的配置文件。

配置内容即可以是层级关系,也可以用”.”号分隔写成一行:

host{ip = 127.0.0.1port = 2282
}

或则

host.ip = 127.0.0.1
host.port = 2282

即json格式和properties格式。(貌似*.json只能是json格式,*.properties只能是properties格式,而*.conf可以是两者混合,而且配置文件只能是以上三种后缀名)

如果多个config 文件有冲突时,解决方案有:
1. a.withFallback(b) //a和b合并,如果有相同的key,以a为准
2. a.withOnlyPath(String path) //只取a里的path下的配置
3. a.withoutPath(String path) //只取a里出path外的配置
例如:

Config firstConfig = ConfigFactory.load("test1.conf");
Config secondConfig = ConfigFactory.load("test2.conf");//a.withFallback(b)  a和b合并,如果有相同的key,以a为准
Config finalConfig = firstConfig.withOnlyPath("host").withFallback(secondConfig);

finalConfig中的配置是test1.conf中的host节点的所有配置与test2.conf所有节点的配置合集。

配置文件解析利器-Config库相关推荐

  1. 【GoCN酷Go推荐】Html解析利器-goquery库

    简介 什么是goquery? goquery是由Go实现的基于Go的net/html包和CSS选择器库cascadia的HTML解析库. 由于net/html解析器需要UTF-8编码,goquery也 ...

  2. viper4android io错误,golang常用库之配置文件解析库-viper使用详解

    一.viper简介 viper 配置管理解析库,是由大神 Steve Francia 开发,他在google领导着 golang 的产品开发,他也是 gohugo.io 的创始人之一,命令行解析库 c ...

  3. 【c语言】C语言配置文件解析库——iniparser

    转载自:http://blog.csdn.net/u011192270/article/details/49339071 C语言配置文件解析库--iniparser 前言:在对项目的优化时,发现Lin ...

  4. C语言配置文件解析库——iniparser

    C语言配置文件解析库--iniparser 1. 1.1前言:在对项目的优化时,发现Linux下没有专门的供给C语言使用的配置文件函数,于是搜索到了iniparser库,可以像那些面向对象语言一样,使 ...

  5. 配置文件-Config库

    Typesafe的Config库,纯Java写成.零外部依赖.代码精简.功能灵活.API友好.支持Java properties.JSON.JSON超集格式HOCON以及环境变量. public cl ...

  6. 编写XML作为配置文件的高级操作库

    编写XML作为配置文件的高级操作库 yipsilon 原创  (参与分:293,专家分:180)   发表:2003-7-29 下午4:26   更新:2003-7-30 上午8:30   版本:1. ...

  7. mybatis3 配置文件解析

    mybatis3 配置文件解析 2013-05-08 19:43 34388人阅读 评论(0) 收藏 举报 分类: mybatis3(19) 目录(?)[+] 配置文件的基本结构 configurat ...

  8. python配置文件解析_Python中配置文件解析模块-ConfigParser

    Python中有ConfigParser类,可以很方便的从配置文件中读取数据(如DB的配置,路径的配置). 配置文件的格式是: []包含的叫section, section 下有option=valu ...

  9. 爬虫解析利器PyQuery详解及使用实践

    作者:叶庭云 整理:Lemon 爬虫解析利器 PyQuery详解及使用实践 之前跟大家分享了 selenium.Scrapy.Pyppeteer 等工具的使用. 今天来分享另一个好用的爬虫解析工具 P ...

  10. python 接口测试 如何写配置文件_python接口自动化测试 - configparser配置文件解析器详细使用...

    configparser简介 ConfigParser模块已在Python 3中重命名为configparser 该模块定义了ConfigParser类. ConfigParser类实现一种基本的配置 ...

最新文章

  1. Page.IsValid的问题
  2. linux之间文件传输scp
  3. Json解析异常处理方式(JSONException: Value of type java.lang.String cannot be converted to JSONObject)...
  4. Chrome浏览器插件Octotree-树形显示GIithub代码
  5. c程序编写x的y次方的方法
  6. (转)Android之发送短信的两种方式
  7. ArcGis——资源三号卫星的DSM提取流程
  8. 使用 background:url(#) 解决 IE67 bug
  9. 【离散数学】相关概念_01
  10. 项目管理流程图模板分享
  11. 开源webrtc服务器对比
  12. 那些年我们在Python掉进的坑——清除不想要的字符
  13. ubuntu系统键盘鼠标失灵的修复方案
  14. 删除字符串中的元音字母
  15. iOS - Safe iOS 加密安全
  16. 【Unity】Unity寻路系统讲解及Navigation实际应用
  17. 以树莓派为控制中心的软硬件之开发之脑电波模块
  18. JAVASwing设置字体,字体大小
  19. 医学图像Dicom(.dcm)转换为NIFTI(.nii)格式
  20. 戴尔DELL SCV/SC系列存储故障 Storage Center停机错误的解决方案

热门文章

  1. redhat7 安装telnet服务
  2. Matable实现利用互相关函数求相位差
  3. 网站开发之HTML基础表格Table和表单Form(三)
  4. 全球及中国树脂晶圆切割刀片行业需求状况及竞争前景分析报告2021-2027年
  5. mysql 数据类型总结
  6. 自己做量化交易软件(37)小白量化实战10--操作方法与MetaTrader5高频策略的进化
  7. 基于小米球(Ngrok)实现内网穿透
  8. python数据分析课程网盘-数据分析技能 全套 百度网盘 下载
  9. 最新《北风网Python零基础人工智能就业教程》
  10. 启用 Windows 功能 NetFx3 时出错,错误代码: -2146498529