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

OSCHINA-MIRROR/zyweistart-magic

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

Магия

Проект

На основе spring-context упрощается использование сторонних библиотек, включая: базовые инструменты разработки, сохранение данных, проверку данных и преобразование данных.

  1. start.framework (базовые инструменты разработки).
  2. start.magic.core.valid (проверка данных).
  3. start.magic.core.converter (преобразование данных).
  4. start.magic.persistence (фреймворк сохранения данных).
  5. start.magic.spring (расширение Spring).
  6. start.magic.thirparty (codec, json) (сторонние расширения).

Проверка данных

  1. @NotNull: не может быть null.
  2. @NotEmpty: не может быть пустой строкой «».
  3. @ShortValid: проверка диапазона значений для типа short.
  4. @IntegerValid: проверка диапазона значений для int.
  5. @LongValid: проверка диапазона значений для long.
  6. @FloatValid: проверка диапазона значений для float.
  7. @DoubleValid: проверка диапазона значений для double.
  8. @BooleanValid: проверка значения boolean.
  9. @Length: проверка длины строки.
  10. @Format: проверка формата.
  11. @Equals: проверка соответствия переданных данных ожидаемому значению.
  12. @NotEquals: проверка несоответствия переданных данных ожидаемому значению.
  13. @Enum: проверка на соответствие перечислению.
  14. @Regex: проверка с использованием регулярного выражения.
  15. @TimeFormat: проверка даты и времени в формате 'yyyyMMddHHmmss'.
  16. @Custom: пользовательская проверка через реализацию интерфейса ValidCheckCustom.

Если проверка завершается неудачно, выбрасывается исключение ValidException с сообщением, установленным в методе ValidContext.verifyField().

Преобразование данных

  1. Переопределённый преобразователь наследуется от AbstractConverterEditor, где T — тип данных после преобразования.
  2. Метод restore считывает внешние данные и преобразует их к типу поля, сохраняя результат через setValue.
  3. Метод converter возвращает данные поля в виде getValue, преобразованные к нужному типу T, которые могут быть использованы в дальнейшем при вызове restore.
  4. Для полей обычно есть стандартные преобразователи, но можно переопределить их, используя аннотацию @PropertyConverter.
  5. Преобразователи могут быть применены к полям объектов POJO, таких как AO, VO, DTO, DO и другие.

Сущности для сохранения данных

  1. Сущности могут наследоваться от классов com.framework.entity.Base, BaseV1Ext или BaseV2Ext.
  2. Аннотация @Entity применяется к классу, который должен быть сущностью, и требует одновременного использования @Table.
  3. Аннотация @Table определяет имя таблицы для сущности, требуя одновременного применения @Entity.
  4. Аннотация @MappedSuperclass используется для базовых классов сущностей.
  5. Аннотация @Id определяет первичный ключ.
  6. Аннотация @Column определяет имя поля таблицы.
  7. Аннотация @Transient игнорирует поле при операциях.

JDBC

  1. В теге sql.xml содержатся настройки для SQL-запросов. Тег sql содержит выполняемый SQL-запрос с идентификатором sqlId. Тег if используется для проверки условий, а тег for — для итерации по списку. Тег include позволяет включать другие SQL-скрипты.

  2. QueryWrapper, UpdateWrapper и DeleteWrapper автоматически генерируют соответствующие SQL-запросы. Service и Dao должны наследовать интерфейсы из пакета com.framework для реализации.

  3. Автоматическое создание SQL для таблиц:

    • аннотация @TableDef применяется к сущности для определения информации о таблице, такой как тип, набор символов, комментарии и объединённые индексы;
    • аннотация @ColumnDef применяется к полю сущности для определения имени поля, индексов, длины и комментариев;
    • интерфейс ScriptConverter позволяет настроить тип и длину поля для таблицы, а класс, реализующий этот интерфейс, должен реализовывать BaseColumnFieldScriptDef;
    • метод ScriptDelegate.buildTableScript выводит DDL-скрипт для текущей сущности;
    • метод ScriptDelegate.tableAnalysis выводит рекомендации по изменению текущей сущности и таблицы;
    • настройка start.framework.print.sqltablescript = true позволяет использовать метод ScriptDelegate.tableAnalysis без дополнительных действий.

Maven

mvn clean install -Dmaven.test.skip=true

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

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

Введение

На основе spring-context упрощается внедрение сторонних библиотек, которые включают в себя: функции работы с базой данных, проверку данных, преобразование данных и распределённые функции. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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