Как загрузить несколько файлов конфигурации, используя общую конфигурацию Apache (Java) - PullRequest
14 голосов
/ 25 февраля 2011

У меня есть основной файл конфигурации, который я загружаю, используя общий класс конфигурации apache. У меня есть требование, когда пользователь может указать файл conf и значения в этом файле переопределят значения в основном файле conf.

Пожалуйста, предложите мне, как мы можем сделать это в классе общей конфигурации apache или любом другом классе с открытым исходным кодом, чтобы добиться этого.

Заранее спасибо

Ответы [ 2 ]

13 голосов
/ 25 февраля 2011

Я думаю, вы хотите что-то похожее на механизм, описанный здесь :

CompositeConfiguration config = new CompositeConfiguration();
config.addConfiguration(new PropertiesConfiguration("user.properties"));
config.addConfiguration(
    new PropertiesConfiguration("application.properties"));
// user preferences have precedence over application preferences

Справка:

0 голосов
/ 14 июля 2015

С cfg4j :

// Specify which files to load. Configuration from both files will be merged.
ConfigFilesProvider configFilesProvider = () -> Arrays.asList(new File("application.properties"), new File("otherConfig.properties"));

// Use local files as configuration store
ConfigurationSource source = new FilesConfigurationSource(configFilesProvider);

Затем используйте его стандартным способом, чтобы получить свойства.

...