一套基于模版的代码生成器

一套基于模版的代码生成器, 可以通过模版文件, 生成任意代码

项目地址

Github
Gitee

获取代码

Github: git clone https://github.com/lghuntfor/generator-code.git
Gitee: git clone https://gitee.com/lghuntfor/generator-code.git

快速开始

执行命令

cd generator-code
mvn package -Dmaven.test.skip=true

在target/generator-code目录下就是最终可执行文件

cd target/generator-code

修改配置文件

vim generator.properties

运行代码生成器

执行 start.sh 或 start.bat

模版与配置变量说明

  • 关于模版的语法请参考beetl文档, 项目中定界符已设置为@, 可通过beetl.properties修改
  • generator.properties文件中所有的配置内容, 都可以直接在模版文件中使用(其中包括文件内容,文件名,目录), 使用${key}的方式获取
示例: ${author}, ${version}, ${packageName}
  • 要基于数据库的表生成相关代码则需要正确配置以下内容, 相关的模版可以参考示例文件
tableNames = rbac_user, rbac_role
dbUrl = jdbc:mysql://10.6.6.3:3306/euaa_devdb
dbName = euaa_devdb
dbUser = root
dbPass = 123456
  • 基于数据库生成常用代码的一些变量说明, 都需要以data开头, 如${data.xxx}, 以下以sys_user表为例
变量名使用示例示例结果说明
tableName${data.tableName}sys_user表名
lowerTableName${data.lowerTableName}sys_user表名, 全小写, 有些表名可能会使用全大写
tableComment${data.tableComment}用户表表注释
className${data.className}SysUser表对应的实体类, 驼峰规则, 可通过prefix去掉前缘
lowerClassName${data.lowerClassName}sysUser实体类名的首字母小写
urlPath${data.urlPath}sys-user实体类名对应的http路径名, 如SysUser对应sys-user
columnList${data.columnList}-数据表中的所有列数据, 通常需要使用循环语句才可使用
beetl循环示例:

@for(c in data.columnList){
    @if(isNotEmpty(c.columnComment)){
    /** ${c.columnComment} */
    @}
    private ${c.javaType} ${c.propertyName};

@}

集合columnList中的属性说明, 基于上一示例, 其中循环变量为c

变量名使用示例示例结果说明
tableName${c.tableName}sys_user表名
columnName${c.columnName}user_name列名
dataType${c.dataType}varchar列在数据库中的类型
fullDataType${c.fullDataType}varchar(10)列在数据库中的类型
columnComment${c.columnComment}用户账号列的注释
defaultValue${c.defaultValue}‘’列的默认值
nullable${c.nullable}true是否可以为空
primary${c.primary}true是否是主健
propertyName${c.propertyName}userName列对应的实体属性名, 驼峰规则, 首字母小写
upperPropertyName${c.upperPropertyName}UserName列对应的实体属性名, 驼峰规则, 首字母大写
javaType${c.javaType}String属性的java类型
baseJavaType${c.baseJavaType}-属性的java类型对应的基本类型, 只有基本类型才会存在
fullJavaType${c.fullJavaType}java.lang.String属性的java类型的全类名
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值