模板数据说明
SdRenderContent 模板数据
SdRenderContent是模板数据的上下文,上下文的结构为
SdClassContent 实体类属性
实体类模板属性,名称为content,属性说明
数据类型 | 属性名称 | 属性描述 |
String | tableName | 表的名字 |
String | alias | 别名 |
String | lowerName | 表的名字全部小写 |
String | upperName | 表的名字全部大写 |
String | pascalName | 表的名字帕斯卡命名 |
String | camelName | 表的名字驼峰命名 |
String | hyphenName | 表的名字连字符命名 |
String | underScoreName | 表的名字下划线命名 |
String | remark | 表的注释 |
Set<String> | imports | 需要导入的包 |
Set<String> | annotations | 类的注解 |
List<SdColumn> | fields | 属性集(包含下方主键.外键.索引.其他普通属性集,不包含不能为空以及附加属性) |
List<SdColumn> | primaryField | 所有主键属性集 |
List<SdColumn> | foreignField | 所有外键属性集 |
List<SdColumn> | indexField | 所有索引属性集 |
List<SdColumn> | otherField | 所有其他普通的属性集 |
List<SdColumn> | cantNullField | 所有不能为空的属性集 |
List<SdColumn> | additionalField | 附加的属性,该属性一般用于只需要创建类属性而不需要创建表属性时使用,可以直接定义Field属性 |
List<SdRelationalContent> | relationals | 类的关系属性 |
Map<String,Object> | extensions | 自定义属性 |
SdColumn 实体类的列属性
类属性
属性名称 | 数据类型 | 属性描述 |
Set<String> | imports | 类需要引入的包 |
Set<String> | annotations | 属性需要添加的注解 |
SdRelationalContent | relationalContent | 属性的关系属性 |
String | fieldType | 属性的数据类型 |
String | fieldName | 属性的名称,驼峰命名,如 mirrenTools |
String | fieldNameLower | 属性的名称,全部小写,如 mirrentools |
String | fieldNameUpper | 属性的名称,全部大写,如 MIRRENTOOLS |
String | fieldNamePascal | 属性的名称帕斯卡命名,如 MirrenTools |
String | fieldNameHyphen | 属性的名称连字符命名,如 mirren-tools |
String | fieldNameUnderScore | 属性的名字下划线命名,如 mirren_tools |
String | fieldRemark | 属性的注释 |
类属性
属性名称 | 数据类型 | 属性描述 |
String | name | 列的名字 |
String | type | 列的数据类型 |
String | remark | 列的注释 |
String | length | 列的长度 |
String | precision | 列的小数点精度 |
String | defaults | 列的默认值 |
boolean | primary | 列是否为主键 |
String | primaryName | 列的主键名称 |
boolean | foreignKey | 列是否为外键 |
String | foreignConstraint | 外键的名字 |
String | foreignReferencesDB | 外键引用那个库或模式 |
String | foreignReferencesTable | 外键引用那个表 |
String | foreignReferencesColumn | 外键引用那个表的列 |
boolean | index | 是否为索引 |
boolean | unique | 索引是否为唯一 |
boolean | concurrently | 索引是否并发 |
String | indexType | 索引的类型 |
String | indexName | 索引的名字 |
String | indexRemark | 索引的备注信息 |
boolean | nullable | 列是否允许为空,默认true,当primary为true时该属性为false |
boolean | unsigned | 列是否为无符号 |
boolean | autoIncrement | 列是否自增量 |
boolean | identity | 列是否为标识 |
Integer | identitySeed | 标识种子 |
Integer | identityIncrement | 标识增量 |
String | sequenceName | 自增采用的序列名称 |
String | constraintType | 约束条件的类型 |
String | constraintName | 约束条件的名称 |
String | constraintExp | 约束条件的条件,比如: id > 10 |
String | collate | 字符排序 |
int | ordinalPosition | 列在表中的顺序 |
Map<String,Object> | extensions | 拓展属性 |
SdRelationalContent 关系属性
属性名称 | 数据类型 | 属性描述 |
Set<String> | imports | 需要导入的包 |
Set<String> | annotations | 类的注解 |
Relational(enum) | relationalType | 关系类型,OneToOne,OneToMany,ManyToOne,ManyToMany |
String | fieldRemark | 关系属性的注释 |
String | fieldType | 关系属性数据类型,比如List<Type> |
String | fieldName | 属性的名字 |
String | lowerName | 表的名字,全部小写 |
String | upperName | 表的名字,全部大写 |
String | pascalName | 表的名字帕斯卡命名 |
String | camelName | 表的名字驼峰命名 |
String | hyphenName | 表的名字连字符命名 |
String | underScoreName | 表的名字下划线命名 |
SdClassContent | classContent | 创建类与表所需要的属性 |
Map<String,Object> | extensions | 拓展属性 |
SdDatabaseOptions 数据库连接信息
属性名称 | 数据类型 | 属性描述 |
int | loginTimeout | 连接超时时间 单位秒,默认60秒 |
String | driverClass | 数据库驱动 |
String | url | 数据库连接地址 |
String | user | 数据库连接用户 |
String | password | 数据库连接密码 |
String | schema | 模式 |
Map<String,Object> | extensions | 拓展属性 |
SdTemplateContent 模板属性
属性名称 | 数据类型 | 属性描述 |
String | path | 模板的所在路径 |
String | file | 模板的名字 |
boolean | override | 如果文件已经存在是否覆盖 |
String | sourceFolder | 项目的源码目录,比如java版maven项目的src/main/java |
String | packageName | 类的包名 |
String | className | 类的名字 |
String | lowerName | 类的名字,全部小写 |
String | upperName | 类的名字,全部大写 |
String | camelName | 类的名字驼峰命名 |
String | hyphenName | 类的名字连字符命名 |
String | underScoreName | 类的名字下划线命名 |
String | suffix | 文件的后缀名,如.java |
Map<String,SdTemplateAttribute> | attrs | 该模板中需要用到的属性,map的key为属性值的key |
Map<String,Object> | extensions | 拓展属性 |
SdTemplateAttribute 模板属性值
属性名称 | 数据类型 | 属性描述 |
String | key | 属性值的key |
String | value | 属性值的value ,如果需要用实体类名字可以使用占位符{lo}=全部小写,{up}=全部大写,{c}=驼峰命名,{p}=帕斯卡命名,{u}=下划线命名,{h}=连字符命名 |
String | describe | 属性值的描述 ,如果需要用实体类名字可以使用占位符{lo}=全部小写,{up}=全部大写,{c}=驼峰命名,{p}=帕斯卡命名,{u}=下划线命名,{h}=连字符命名 |