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

OSCHINA-MIRROR/max256-morpho-code-generator

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 9.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 20:29 9705981

Морфо Кодогенератор

Введение

Морфо Кодогенератор основан на проекте MyBatis-Generator-Gui-Extension и разработан независимо. Он не гарантирует совместимости с исходным проектом.

Этот кодогенератор полностью совместим с проектами на основе Morpho Scaffolding. Он также совместим с 95% проектов, использующих универсальные мапперы (UI-часть и привязка к Morpho), и с 90% MyBatis проектов (расширяемость и возможность модификации для соответствия шаблонам).

Проект отличается от MyBatis-Generator-Gui-Extension тем, что по умолчанию поддерживает JPA, имеет более совершенные шаблоны и поддерживает больше переменных в шаблонах, а также использует обновлённые зависимости. Max256 будет продолжать поддерживать этот проект как рекомендуемый кодогенератор для Morpho Scaffolding, учитывая некоторые особенности, специфичные для окружения Morpho.

Кодогенератор поддерживает MySQL 5.5–5.7, Oracle 11g и 12c, SQL Server и PostgreSQL.

Исходный функционал

  • Слияние файлов: при повторном создании кода сохраняются поля, методы и SQL-операторы без аннотации @mbg.generated. Поддерживаемые файлы: сущности, Example, Mapper.java и Mapper.xml.
  • Автоматическое добавление ключевых слов: для имён таблиц и полей, которые являются ключевыми словами, можно указать использование других строк для предотвращения конфликтов.
  • Расширение сущностей:
    • RootClass (необязательно): позволяет задать класс-корень для объектов сущности.
    • Trim (необязательно): добавляет метод trim к установщикам String.
    • Использование реальных имён столбцов (необязательно): определяет, использовать ли реальные имена столбцов.
    • Поточное построение (необязательно): создание объектов с использованием синтаксиса User user = new User().withUsername("uname").withPassword("123").
    • toString (по умолчанию, может быть отключено): генерирует метод toString с возможностью выбора вызова родительского метода toString.
    • equals/hashCode (по умолчанию, может быть отключено): генерирует методы equals и hashCode с возможностью выбора вызова родительских методов.
    • Serializable (по умолчанию, может быть отключено): наследует интерфейс Serializable.
  • Пример расширения:
    • CaseInsensitiveLike: добавляет возможность поиска с помощью CaseInsensitiveLike.
    • Пример Criteria расширения плагина.
    • Плагин для получения реальных полей.
    • Разбиение на страницы: предоставляет разбиение на страницы на основе limit/offset для MySQL. Для Oracle не предусмотрено, рекомендуется использовать плагин PageHelper.
  • Mapper расширение:
    • Выбор типа Mapper: возможность выбора между чистым XML, смешанным Java и XML или чистой Java генерацией Mapper.
    • Указание первичного ключа: позволяет указать первичный ключ таблицы, автоматически генерируя SQL для получения автоинкрементного первичного ключа.
    • Виртуальный первичный ключ.
    • Логическое удаление.
    • Пакетная вставка.
    • Добавление аннотации @Mapper.
    • Переключатели для каждого метода.
  • Генерация JPA аннотаций (по умолчанию, можно отключить).
  • Указание заголовка класса: возможность настройки комментариев для сгенерированных файлов.
  • Кэширование: использование официального плагина кэширования MBG для предоставления метки cache для сгенерированных методов запросов.
  • Указание BasPackage.
  • Переименование объектов:
    • Класса Example.
    • Сущности.
    • Mapper класса.
  • Определение суффиксов: возможность изменения суффиксов для пакетов dao, сущностей, Mapper, Example и сущностей.

Дополнительные функции после отделения проекта

  • Полные JPA аннотации: @Entity, @Column, @Transient, @Id, @Table.
  • Более богатые переменные шаблона: добавлены переменные для доступа к оригинальным именам полей, типам полей, аннотациям полей, длине полей, проверке полей на пустоту и другим, облегчая написание собственных шаблонов.
  • Интеграция с Morpho Scaffolding: встроенные шаблоны идеально поддерживают Morpho Scaffolding, автоматически создавая права доступа SQL, сущности, DAO, сервисы, контроллеры, JSP-страницы и ускоряя разработку проекта и уменьшая вероятность ошибок.
  • Поддержка универсальных Mapper: Mapper пользователи также могут использовать сгенерированные сущности, полностью соответствующие стандартам универсальных Mapper (https://gitee.com/free/Mapper).
  • Обновление зависимостей до последних стабильных версий: Max256 продолжит поддерживать этот проект.

Как использовать

Перед запуском убедитесь, что ваша версия JDK — 1.8u40 или выше. Рекомендуется клонировать репозиторий на локальный компьютер, чтобы при обновлении проекта можно было просто выполнить pull или загрузить файл из каталога dist, который можно запустить двойным щелчком мыши после копирования в папку.

  • Метод 1: загрузка исходного кода
  1. Нажмите «Clone or download» в правом верхнем углу или используйте команду git для копирования репозитория кода: git clone https://gitee.com/max256/morpho-code-generator.git.
  2. Импортируйте исходный код в IDE как проект Maven и запустите com.spawpaw.mybatis.generator.gui.GeneratorGuiRunner для запуска.
  • Способ 2: загрузка jar-файла Можно собрать исходный код с помощью команды mvn: package, чтобы создать исполняемый jar самостоятельно, или выбрать версию для загрузки (https://gitee.com/max256/morpho-code-generator/releases). В каталоге dist находятся двоичные версии текущей версии выпуска, которые можно запустить, дважды щёлкнув по ним.

Вторичная разработка, вклад и общение Если вы разработали свой собственный плагин MBG, вам нужно всего несколько строк кода, чтобы раскрыть его в графическом интерфейсе, без необходимости разбираться во всей структуре проекта. (См. «Четыре шага для раскрытия конфигурации плагина в графическом интерфейсе» (https://gitee.com/max256/morpho-code-generator/wikis)).

Если у вас возникли проблемы при использовании или вы хотите добавить какие-либо функции, пожалуйста, создайте issue или свяжитесь с автором: server@max256.com.

Адрес проекта: https://gitee.com/max256/morpho-code-generator QQ группа для общения: 210722852

Другое Если вы считаете, что это программное обеспечение полезно для вас, не забудьте поставить этому проекту звезду ★.

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/max256-morpho-code-generator.git
git@api.gitlife.ru:oschina-mirror/max256-morpho-code-generator.git
oschina-mirror
max256-morpho-code-generator
max256-morpho-code-generator
master