1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dingnate-conf4j

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Конф4дж: описание библиотеки инструментов для работы с конфигурационными файлами

Conf4j — это библиотека инструментов, предназначенная для работы с файлами конфигурации. Она позволяет динамически изменять конфигурацию без перезапуска приложения. Библиотека поддерживает сканирование локальных каталогов, а также репозиториев Git и SVN.

Использование

Библиотека Conf4j предоставляет следующие возможности:

  • Сканирование локального каталога, Git или SVN репозитория.
  • Динамическое обновление конфигурации без перезапуска приложения.
  • Поддержка различных форматов конфигурационных файлов.

Для использования библиотеки необходимо выполнить следующие шаги:

  1. Определить класс конфигурации, который будет содержать свойства конфигурации.
  2. Создать экземпляр класса конфигурации и использовать его в приложении.
  3. Запустить сканер конфигурации, чтобы начать мониторинг изменений в конфигурационном файле.

Пример использования:

@Config(file = "demo.properties", prefix = "demo")
public class DemoConf implements Conf {
    private static transient final Logger LOG = LoggerFactory.getLogger(Conf.class);
    public final static DemoConf ME = new DemoConf();
    static {
        try {
            ConfKit.handler(DemoConf.class);
        } catch (Exception e) {
            LOG.error("handler DemoConf failed.", e);
        }
    }
    String attrStr;
    long attrLong;
    int attrInt;
    boolean attrBool;
    // Опущено: getter/setter методы
    @Override
    public String toString() {
        return "DemoConf [attrStr=" + attrStr + ", attrLong=" + attrLong + ", attrInt=" + attrInt + ", attrBool="
                + attrBool + "]";
    }
}

В этом примере определяется класс DemoConf, который представляет собой конфигурацию. Класс аннотирован @Config, что указывает на то, что он является классом конфигурации. Также в классе создаётся статический экземпляр ME, который можно использовать для доступа к свойствам конфигурации.

После создания класса конфигурации необходимо создать экземпляр этого класса и использовать его в своём приложении. Пример использования экземпляра класса конфигурации:

public class Main {
    public static void main(String[] args) throws InterruptedException {
        // Через экземпляр me класса конфигурации получаем доступ к свойствам
        System.out.println(DemoConf.ME);
        // Или через ConfigManager.config(конфигурационный класс) получаем доступ к свойствам
        System.out.println(ConfigManager.config(DemoConf.class));
        // Добавляем пользовательские глобальные свойства через ConfigManager.putProperties()
        Properties properties = new Properties();
        String testPropertyKey = "test.add.property.key";
        properties.setProperty(testPropertyKey, "test.add.property.value");
        ConfigManager.putProperties(properties);
        System.out.println(testPropertyKey + "=" + ConfigManager.getValueByKey(testPropertyKey));
    }
}

Этот пример демонстрирует два способа получения доступа к свойствам конфигурации: через экземпляр класса конфигурации ME и через метод ConfigManager.config(). Также в примере показано, как добавить пользовательские глобальные свойства с помощью метода ConfigManager.putProperties().

Чтобы начать сканирование конфигурации, необходимо запустить сканер конфигурации. Это можно сделать следующим образом:

public class Main {
    public static void main(String[] args) throws InterruptedException {
        // Запускаем сканер конфигурации
        ConfigManager.startScaner();
        int i = 0;
        while (i++ < 100) {
            Thread.sleep(2000);
            System.out.println(DemoConf.ME);
        }
    }
}

Этот код запускает сканер конфигурации и выводит текущее значение свойств конфигурации каждые две секунды.

Также в библиотеке Conf4j есть возможность сканировать локальный каталог, Git или SVN репозиторий. Для этого необходимо настроить сканер конфигурации соответствующим образом.

Заключение

Конф4дж — это удобная библиотека инструментов для работы с конфигурацией. Она предоставляет возможность динамического обновления конфигурации без перезапуска приложения, поддерживает различные форматы конфигурационных файлов и может быть использована для сканирования локальных каталогов, Git и SVN репозиториев.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Библиотека инструментов для настройки файлов свойств, конфигурация изменяется динамически и вступает в силу. Поддерживает сканирование локального каталога, репозиториев Git и SVN. Развернуть Свернуть
LGPL-3.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/dingnate-conf4j.git
git@api.gitlife.ru:oschina-mirror/dingnate-conf4j.git
oschina-mirror
dingnate-conf4j
dingnate-conf4j
master