HouTu
HouTu — это простой в использовании, но мощный инструмент для генерации кода на основе MySQL. Название HouTu происходит от китайского имени богини земли Хоу Ту, которая в китайской мифологии является матерью всех вещей.
С помощью HouTu можно создавать структурированный код любой сложности, такой как DO, Mapper, XML, Service, Controller, SQL, Html и т. д. Для этого нужно написать собственный шаблон на Freemarker, а HouTu сгенерирует готовый код.
Шаблоны доступны в папке doc/template.
Generator g = new Generator(Config.getInstance()
.setDriver("com.mysql.cj.jdbc.Driver")
.setUrl("jdbc:mysql://127.0.0.1:3306/houtu?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useSSL=false&allowPublicKeyRetrieval=true&useLegacyDatetimeCode=false")
.setUsername("root")
.setPassword("root")
.setPrimaryKeyType("Integer")
.setClassPrefix("HouTu")
.setClearClassPrefix("Houtu")
.setOutRootDir(System.getProperty("user.dir") + File.separator + "generator-output"));
Класс Generator имеет только один конструктор, который принимает экземпляр системного конфигурационного класса Config.
Класс Generator предоставляет четыре интерфейса:
Generator#deleteOutRootDir()
: удаляет файлы в выходном каталоге, обычно вызывается перед генерацией для очистки старых выходных файлов.Generator#printAllTableInfo()
: выводит информацию обо всех таблицах.Generator#generateAll()
: генерирует Java-файлы для всех таблиц.Generator#generate(String[])
: генерирует файлы для указанных таблиц, передавая их имена в виде массива. Если массив пуст, вызывается метод Generator#generateAll()
.// Удаляем выходной каталог генератора
g.deleteOutRootDir();
// Выводим информацию обо всех таблицах
g.printAllTableInfo();
// Генерируем файл для отдельной таблицы
g.generate("sys_user");
00:53:57.945 [main] INFO me.zhyd.houtu.Generator - [delete dir] D:\project\java\Houtu\generator-output
00:53:57.955 [main] INFO me.zhyd.houtu.Generator - ----All Table Names Begin----
00:53:57.990 [main] INFO me.zhyd.houtu.Generator - InnoDB - "sys_resources" - utf8_general_ci
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - InnoDB - "sys_role" - utf8_general_ci
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - InnoDB - "sys_role_resources" - utf8_general_ci
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - InnoDB - "sys_user" - utf8_general_ci
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - InnoDB - "sys_user_role" - utf8_general_ci
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - ----All Table Names END----
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - ---------------------------------------------------------------
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - - BEGIN generate by sys_user
00:53:57.992 [main] INFO me.zhyd.houtu.Generator - ---------------------------------------------------------------
00:53:58.077 [main] INFO me.zhyd.houtu.Generator - ---------------------------------------------------------------
00:53:58.078 [main] INFO me.zhyd.houtu.Generator - - BEGIN generate by sys_user
00:53:58.078 [main] INFO me.zhyd.houtu.Generator - ---------------------------------------------------------------
00:53:58.471 [main] INFO me.zhyd.houtu.Generator - D:\project\java\Houtu\generator-output\biz\dto\HouTuSysUserDto.java
00:53:58.476 [main] INFO
``` | WeChat |
| :------------: | :------------:|
| <img src="https://gitee.com/yadong.zhang/static/raw/master/qrcode/zfb_code.png" width="200"/> | <img src="https://gitee.com/yadong.zhang/static/raw/master/qrcode/wx_code.png" width="200" /> |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )