应用程序级别的属性

gme*_*eka 3 java properties

我目前有一个属性文件,并且在需要获取属性的每个类中加载此文件

static PropertiesConfiguration config = null;
config = new PropertiesConfiguration("Interface.properties");
Run Code Online (Sandbox Code Playgroud)

一切正常。但是我知道这不是多次加载属性文件的有效方法。

谁能帮助我如何在应用程序级别创建属性文件并创建Java文件(例如config.java)+调用返回属性的方法。

Coo*_*ans 5

解决此问题的一种方法是利用依赖注入。您可以有一个容纳属性实例的单例bean,然后将该bean作为对每个需要访问这些属性的类的依赖项进行注入。

一种实现依赖注入以使用Spring框架的方法。例如,您可以使用Spring的PropertyPlaceHolderConfigurer来加载属性文件。然后,此Bean成为应用程序其余部分的参考Bean。可以在这里找到关于此的教程。

您的另一种选择是将属性文件加载到应用程序的主条目类或应用程序的主方法的构造函数中,然后将该对象传递给需要它的类。但是,这将使您的应用程序更紧密地耦合,并且将来的维护将更加困难。

另一种选择是创建一个加载属性的单例类,并具有一个根据需要返回值的方法。