Подтвердить что ты не робот

Как загрузить несколько файлов конфигурации с использованием общей конфигурации apache (java)

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

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

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

4b9b3361

Ответ 1

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

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

Справка:

Ответ 2

С 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);

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