保存属性文件最有效率

时间:2016-08-21 15:56:19

标签: java properties-file

哪种方式更好(更快,更少存储)?

  1. 在每个文件中保存数千xyz.properties - 约30个键/值
  2. 包含所有数据的一个.properties文件 - 大约30,000个键/值

2 个答案:

答案 0 :(得分:1)

打开和关闭1000个文件是操作系统的主要开销,所以你可能最好使用一个大文件。

答案 1 :(得分:1)

我认为这里有两个方面:

  1. 正如Guenther正确指出的那样,处理文件时会出现开销。你需要“文件句柄”;以及处理文件的其他可能的数据结构;所以有很多不同的级别,其中一个大文件比拥有许多小文件更好。
  2. 但也有“可维护性”。含义:从开发人员的角度来看,处理包含30 K键/值的属性文件是您真正不想进入的。如果所有内容都在一个文件中,则必须不断更新(并部署)一个巨大的文件。一个变化;并且整个文件需要出去。您是否有适当的机制允许“运行时”重新加载属性;或者这是否意味着您的申请必须关闭?在这个大文件中有重复的情况会发生多久?或者更糟糕的是:你在5082号线上设置了物业A的价值,然后有人不注意并且覆盖第29732行的物业A.有很多事情可能出错;只是因为在一个文件中包含所有内容;无法被任何人消化!请放心:调试类似的东西很难
  3. 我刚给你一些问题要考虑;所以你可能想退后一步,提出更多的要求。

    以任何方式;您可能希望研究一个解决方案,其中开发人员处理许多小属性文件(您知道,如每个功能的一个文件)。然后使用工具构建生产环境中使用的一个大文件。

    最后:如果您的应用程序确实需要30K属性;那么你应该更担心产品的质量。在我看来,这不是一种设计“气味”;这听起来像是一种设计的恶臭。含义:没有合理的应用程序应该需要30K属性才能运行。