java - 应用程序配置文件

标签 java xml json cross-platform configuration-files

好的,所以我不想在这里开始一场圣战,但我们正在努力整合我们处理应用程序配置文件的方式,并且我们正在努力做出最好的决定采取的方法。目前,我们分发的每个应用程序都使用它自己的临时配置文件,无论是属性文件(ini 样式)、XML 还是 JSON(目前仅供内部使用!)。

目前我们的大部分代码都是 Java,所以我们一直在查看 Apache Commons Config ,但我们发现它非常冗长。我们还查看了 XMLBeans ,但它似乎很多。我也觉得好像我正被推向将 XML 作为一种格式,但我的客户和同事对尝试其他东西感到担忧。我可以从客户的角度理解它,每个人都听说过 XML,但归根结底,不应该使用正确的工具来完成这项工作吗?

现在人们在生产系统中使用什么格式和库,还有其他人试图避免 angle bracket tax ?

编辑: 确实需要一个跨平台解决方案:Linux、Windows、Solaris 等,用于与配置文件交互的库的选择是与格式的选择同样重要。

最佳答案

YAML,原因很简单,与 XML 相比,它提供了非常易读的配置文件。

XML:

<user id="babooey" on="cpu1">
    <firstname>Bob</firstname>
    <lastname>Abooey</lastname>
    <department>adv</department>
    <cell>555-1212</cell>
    <address password="xxxx">ahunter@example1.com</address>
    <address password="xxxx">babooey@example2.com</address>
</user>

YAML:

    babooey:
        computer : cpu1
        firstname: Bob
        lastname: Abooey
        cell: 555-1212
        addresses:
            - address: babooey@example1.com
              password: xxxx
            - address: babooey@example2.com
              password: xxxx

示例取自以下页面:http://www.kuro5hin.org/story/2004/10/29/14225/062

关于java - 应用程序配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12144/

相关文章:

java - Android - 通过 Html.fromHtml TextView 中的图像?

java - Activity 和服务之间的 SharedPreference

c# - 即使元素确实存在,LINQ to XML Elements() 和 Descendants() 也没有产生任何结果

xml - 错误 : XML validator says conetent not allowed in trailing section and other namespace issues?

.NET XML pretty-print ?

javascript - TypeError : this. model.toJSON 不是函数

java - 从另一个 JSON 数组中的 JSON 数组检索多个 JSON 对象?

java - 2010 年的 java 并发修改异常崩溃

java - Android - 服务、MediaPlayer 和 setVolume

java - 如何将 json 数组中的值转换为 java 字符串