Как получить доступ к файлу свойств Java
У меня есть файл свойств.
#My properties file
config1=first_config
config2=second_config
config3=third_config
config4=fourth_config
У меня есть класс, который загружает файл свойств в небольшое приложение Java. Это прекрасно работает, особенно когда я пытаюсь получить доступ к каждому свойству в методе этого класса.
public class LoadProperties {
public void loadProperties() {
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("resources/config.properties");
prop.load(input);
} catch (Exception e) {
System.out.println(e);
}
}
}
Я вызываю метод этого класса в другом классе, в методе.
public class MyClass {
public void myMethod() {
LoadProperties lp = new LoadProperties();
lp.loadProperties();
/*..More code...*/
}
}
Как получить доступ к свойствам в myMethod
метод в MyClass
учебный класс? Я пробовал печатать prop.getProperty("[property_name]")
, который не работает.
Есть идеи? Я предполагаю, что это будет, как я бы получить доступ к свойствам. Я могу хранить их в переменных в loadProperties
Класс и вернуть переменные, но я думал, что смогу получить к ним доступ, как я сказал выше.
1 ответ
Вы можете изменить класс LoadProperties для загрузки свойств и добавить метод для возврата загруженных свойств.
public class LoadProperties {
Properties prop = new Properties();
public LoadProperties() {
try (FileInputStream fileInputStream = new FileInputStream("config.properties")){
prop.load(fileInputStream);
} catch (Exception e) {
System.out.println(e);
}
}
public Properties getProperties() {
return prop;
}
}
Тогда используйте это так
public class MyClass {
public void myMethod() {
LoadProperties loadProperties = new LoadProperties();
System.out.println(loadProperties.getProperties().getProperty("config1"));
}
}