CodeGenerator
Это инструмент, который использует шаблоны Freemarker и Velocity для генерации кода.
Генератор просто извлекает данные структуры таблицы из базы данных и передаёт эту модель шаблонизатору. На основе пользовательских шаблонов генератор создаёт необходимый код.
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<configuration>
<classpath>
<!-- 引入JDBC驱动,手动添加 -->
<entry>lib/mysql-connector-java-5.1.36-bin.jar</entry>
</classpath>
<!-- 代码生成目标基准目录 -->
<targetProject>D:\temp</targetProject>
<!-- 基本包 -->
<basePackage>org.joy</basePackage>
<!-- 模块名 -->
<moduleName>test</moduleName>
<templates>
<!-- 模板 ,手动添加 -->
<template name="实体类" engine="freemarker">
<!-- 模板文件 -->
<templateFile>./entity.ftl</templateFile>
<!-- 文件路径 -->
<targetPath>${targetProject}\src\${basePackage}\${moduleName}\entity\</targetPath>
<!-- 文件名 -->
<targetFileName>${table.className}.java</targetFileName>
<!-- 文件编码 -->
<fileEncoding>UTF-8</fileEncoding>
</template>
</templates>
</configuration>
Свойство | Описание |
---|---|
String tableName | Имя таблицы. |
String tableType | Тип таблицы. |
String tableAlias | Псевдоним таблицы. |
String remarks | Комментарий к таблице. |
String remarksUnicode | Комментарий к таблице в формате Unicode. |
String className | Имя класса сущности. |
String javaProperty | Имя свойства сущности при использовании в качестве атрибута. |
List primaryKeys | Набор первичных ключей. |
List baseColumns | Набор основных полей. |
List columns | Все поля (primaryKeys + baseColumns). |
List importedKeys | Все импортированные ключи. |
List exportedKeys | Все экспортированные ключи. |
boolean hasDateColumn | Есть ли поле типа дата. |
boolean hasBigDecimalColumn | Есть ли поле BigDecimal. |
boolean hasNotNullColumn | Есть ли непустое поле основного типа. |
boolean hasNotBlankColumn | Есть ли непустое строковое поле. |
boolean hasSearchableColumn | Можно ли искать в поле. |
Свойство | Описание |
---|---|
String columnName | Имя поля. |
boolean primaryKey | Является ли полем первичным ключом. |
boolean foreignKey | Является ли полем внешним ключом. |
int size | Длина поля. |
int decimalDigits | Количество знаков после запятой. |
boolean nullable | Может ли быть пустым. |
boolean autoincrement | Автоинкремент. |
boolean unique | Уникальность. |
boolean indexed | Наличие индекса. |
String defaultValue | Значение по умолчанию. |
String remarks | Комментарий. |
String remarksUnicode | Число в формате Unicode. |
int jdbcType | Соответствует java.sql.Types. |
String jdbcTypeName | Название jdbcType. |
String javaProperty | Имя атрибута. |
String javaType | Java-тип, например String, Long, Integer. |
String fullJavaType | Полный Java-тип, например java.lang.String. |
String getterMethodName | Метод получения. |
String setterMethodName | Метод установки. |
boolean display | Отображение. |
boolean searchable | Возможность поиска. |
boolean orderable | Возможность сортировки. |
String dict | Имя словаря данных. |
Метод | Описание |
---|---|
boolean isString() | Строка. |
boolean isFloatNumber() | С плавающей точкой, включая Float, Double, BigDecimal. |
boolean isIntegerNumber() | Целое число, включая Byte, Short, Integer, Long. |
boolean isBigDecimal() | BigDecimal. |
boolean isBoolean() | Булево значение. |
boolean isDate() | Дата, включая Date, Timestamp, Time. |
boolean isBLOB() | BLOB, CLOB, LONGVARCHAR, LONGVARBINARY или VARBINARY. |
boolean isPrimitiveType() | Основной тип. |
boolean hasDict() | Используется словарь данных. |
Свойство | Описание |
---|---|
String pkTableName | PKTABLE_NAME. |
String pkColumnName | PKCOLUMN_NAME. |
String fkTableName | FKTABLE_NAME. |
String fkColumnName | FKCOLUMN_NAME. |
Integer seq | KEY_SEQ. |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )