java中配置对象的对象类型

时间:2013-03-15 10:15:42

标签: java configuration-files

我想知道如何创建一个包含用户填充到配置文件中的所有配置设置的对象。配置文件是给予程序的唯一参数。我想解析此配置文件一次并检查键值对。必须在所有其他对象中知道此对象。

现在我有一个只有静态方法的配置对象,但首先必须调用parseConfigurationFile方法。我想在这个类的某种构造函数中使用它。静态构造函数不能有参数(这是逻辑因为你不创建对象)。

是否有可能在另一个对象中获得给该程序的第一个参数?或者我的配置对象设计是否错误?或者这是我的问题的最佳解决方案?

也许另一个解决方案是记住这个对象的第一个方法调用,当第一次调用时,在主类中请求配置文件然后解析参数...

哪个选项是我问题的最佳解决方案?

2 个答案:

答案 0 :(得分:0)

通常,这是由java How to read Properties File in Java中的.properties个文件完成的。

答案 1 :(得分:0)

在我看来,你想要一个ConfigurationManager的实例。 ConfigurationManager将实例化为程序初始化的一部分(可能在main()方法中)

该实例将传递给需要它的每个组件。当每个组件调用方法manager.getConfiguration()时,该方法本身检查配置是否已加载,并在需要时加载它(即它是第一次初始化吗?)

我不会做任何静态的事情。我宁愿有一个班级的实例。这使得管理生命周期等变得更加容易。请注意,在第一次调用时读取配置的要求在管理器中被捆绑(封装),而您的客户(那些使用经理的客户)不必担心这一点。

请注意,上面并不担心您如何阅读该配置(使用属性文件,使用Apache Commons配置等)。