Инструмент для чтения конфигурационных файлов: yaml, properties, xml, db, git.
Архитектура программного обеспечения будет дополнена позже.
Координаты Maven репозитория:
<dependency>
<groupId>cn.antcore</groupId>
<artifactId>AntResources</artifactId>
<version>${Maven репозиторий последняя версия}</version>
<scope>compile</scope>
</dependency>
Последние методы использования см. в Test.java.
PropertiesResources resources = new PropertiesResources();
resources.loadByClassPath("application.properties");
System.err.println(resources.getResources());
PropertiesResources resources = new PropertiesResources();
resources.loadByFilePath("D:\\config\\common.properties");
System.err.println(resources.getResources());
XmlResources resources = new XmlResources();
resources.loadByClassPath("application.xml");
System.err.println(resources.getResources());
XmlResources resources = new XmlResources();
resources.loadByFilePath("D:\\config\\application.xml");
System.err.println(resources.getResources());
YamlResources resources = new YamlResources();
resources.loadByClassPath("application.yml");
for (Object key : resources.getResources().keySet()) {
System.err.println(key + ":" + resources.getResources().get(key));
}
DbResources resources = new DbResources();
resources.load();
for (Object key : resources.getResources().keySet()) {
System.err.println(key + ":" + resources.getResources().get(key));
}
DbResources resources = new DbResources();
resources.load("tb_config");
for (Object key : resources.getResources().keySet()) {
System.err.println(key + ":" + resources.getResources().get(key));
}
GitResources resources = new GitResources();
resources.load("client");
for (Object key : resources.getResources().keySet()) {
System.err.println(key + ":" + resources.getResources().get(key));
}
Resources resources = new AutoResources("db:tb_config");
//Resources resources = new AutoResources("classpath:application.yml");
//Resources resources = new AutoResources("file:D:\application.yml");
//Resources resources = new AutoResources("git:test");
System.err.println(resources.getResources());
По умолчанию запускаются конфигурационные файлы: application.yml|application.properties|application.xml
profile, настройка конфигурационного файла среды
System.setProperty("ant.core.resources.profile", "release");
ant:
core:
resources:
profile: dev
Оба метода могут быть использованы, рекомендуется использовать первый метод.
DbResources, чтение ресурсов из базы данных;
ant:
core:
resources:
db:
dataSource: cn.antcore.resources.db.datasource.DefaultDataSource #数据库连接池,使用默认连接池需要导入com.alibaba.druid连接池;如需自定义连接池,请自定义继承AbstractDataSource抽象类,并在此处指定它。
driveClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_config?characterEncoding=utf-8&useSSL=false
username: root
password: 123123
tableName: tb_config
Чтение конфигурации из указанной таблицы: DbResources.load(var1), указать имя одной таблицы;
Конфигурация, прочитанная из базы данных, должна содержать поля [key,value], другие поля не ограничены;
GitResources, чтение последней конфигурации из Git;
ant:
core:
resources:
git:
uri: #адрес репозитория
username: #имя пользователя репозитория
password: #пароль репозитория
branch: master #ветка репозитория
localDir: #место сохранения репозитория, по умолчанию ${java.io.tmpdir} адрес
Чтение указанной конфигурации: GitResources.load(var1), укажите имя ресурса;
Шифрование и расшифровка значений конфигурации:
Выполните класс cn.antcore.resources.ValueEncrypt, введите ключ и строку для шифрования, затем получите зашифрованный текст.
Введите ключ: Hong
Введите команду: e MyName
Шифрование успешно: 7E42A0FE299083AAF3E8BE75D5A17C65
Сначала настройте глобальный ключ GlobalConfig, как показано ниже
GlobalConfig.useKey("Hong");
Введите зашифрованное значение в свойство.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )