我需要我的Java应用程序从文件中读取配置属性,并在整个类中使用它们。我在考虑一个单独的类,它将为文件中的每个属性返回一个property_key:property_value映射。然后,我会在其他类中从这个映射中读取值。也许还有其他更常用的选择?
我的属性文件很简单,大约有15个条目。
发布于 2011-10-06 01:39:19
只需使用java.util.Properties加载即可。它已经实现了Map。您可以静态地加载和获取属性。下面是一个示例,假设您的com.example包中有一个config.properties文件:
public final class Config {
private static final Properties properties = new Properties();
static {
try {
ClassLoader loader = Thread.currentThread().getContextClassLoader();
properties.load(loader.getResourceAsStream("com/example/config.properties"));
} catch (IOException e) {
throw new ExceptionInInitializerError(e);
}
}
public static String getSetting(String key) {
return properties.getProperty(key);
}
// ...
},它可以用作
String foo = Config.getSetting("foo");
// ...如有必要,您可以通过接口将此实现抽象出来,并通过抽象工厂获取实例。
https://stackoverflow.com/questions/7665310
复制相似问题