在配置文件中密集使用列表

时间:2015-09-04 14:54:14

标签: java refactoring configuration-files

在重构一些遗留系统(java)时,我遇到了一个大量使用列表的配置文件。 大多数情况下,有一个属性定义引用参数列表,然后有属性具有相应的值,例如:

referencesNames = name1, name2, ...
valuesList1 = name1Value, name2Value, ...
valuesList2 = name1Value, name2Value, ...

问题 - 列表太多而且太长了。

我的一个想法是消除参考列表并创建类似的东西:

name1Values = value1, value2, ...
name2Values = value1, value2, ...

然而,这些列表仍然很长,并且很难正确定义它们的值。 此外,引用名称现在是硬编码的,所以如果我想添加一个新的,我必须打开代码来处理相应的属性。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

Java中的配置文件有两种常见的选择:Properties和XML。

转换为XML涉及更多,但允许更复杂的配置。 XML的确切含义取决于您,但这里有一个例子:

<Configuration>
    <Reference name="name1">
        <Value1>name1Value</Value1>
        <Value2>name1Value</Value2>
        ...
    </Reference>
    ...
</Configuration>

使用属性文件,可以使用限定名称来删除这些列表:

Value1.name1    name1Value
Value2.name1    name1Value

或者相反:

name1.Value1    name1Value
name1.Value2    name1Value