freemarker 生成java_半自动化Java代码生成器[利用freemarker模板生成]

Rapid-Generator是一个基于Freemarker模板的Java代码生成器,已更新为MAVEN格式,支持表名和列名前缀去除、忽略表、子包等功能。用户可自定义模板并配置生成路径。通过执行特定命令进行编译和代码生成,适用于快速生成基础代码。生成后需手动调整,适合半自动化开发流程。
摘要由CSDN通过智能技术生成

rapid-generator

半自动化Java代码生成器[利用freemarker模板生成]

增加一些定制和扩展, 修改为基于MAVEN的格式。 整体架构保持不变。

增加的特性为:

支持表名前缀去除,参考配置文件中的 tableRemovePrefixes

支持列名前缀去除,参考配置文件中的 rowRemovePrefixes

支持需要忽略的表,参考配置文件中的 skipTablePrefixes

支持子包,参考配置文件中的 subpackage,其实原版就支持, 目录为属性KEY加上 _dir 即可,例如 "${xxxKEY_dir}"

其他一些模板使用上的修正,参考 template 目录

开始日期: 2016年1月21日

使用说明

1. 构建项目/编译

执行 maven_clean_package.cmd 文件或者以下命令进行编译:

mvn clean package -DskipTests

编译后的文件在 target/bin 目录下。 目录结构为:

|--lib\: 依赖库

|--template\: 模板文件

|--generator.xml: 配置文件

|--rapid-gen.bat: Win32脚本文件

2. 代码生成

2.1 启动生成器

resource下generator.xml 中mysql用户修改,basepackage,subpackage,urlpackage 自己根据需求修改,模板为templete下相关文件,按照需要修改即可 GeneratorMain 运行main方法即可 将bin目录拷贝到需要的地方, 这就是生成文件需要的东西。

拷贝好之后, 修改generator.xml,需要修改的 entry 包括:

basepackage

subpackage

jdbc.url

jdbc.username

jdbc.password

双击执行rapid-gen.bat文件,或者执行命令:

Windows下:

set classpath=%classpath%;.;.\lib\*

java -Xms128m -Xmx384m cn.org.rapid_framework.generator.ext.CommandLine -DtemplateRootDir=template

Linux 系统使用 export 设置环境变量。

Linux 系统(未验证!!):

以及MacOSX系统:

java -classpath '.:./lib/*' -Xms128m -Xmx384m cn.org.rapid_framework.generator.ext.CommandLine -DtemplateRootDir=template

2.2 使用生成器

启动之后如果不报错,则提示信息为:

templateRootDir:E:\00_GIT_ALL\rapid-generator\target\bin\template

Usage:

gen table_name [include_path]: 根据 table_name 生成

del table_name [include_path]: 根据 table_name 删除

gen * [include_path]: 生成所有

del * [include_path]: 删除对应数据库中所有表的文件

quit : 退出

[include_path] 可为空,指templateRootDir的子目录,例如: 1. dao 2. dao/**,service/**

please input command:_

根据提示, 输入 gen * 回车,则对所有表进行生成。

输入 gen 表名 则是生成单个表。

生成之后的目录默认为 generator-output

生成完毕之后,因为这是一个半自动生成器,所以需要手工拷贝代码。

这也是合理的,因为代码开发是程序员的事。 这不是自动编译或者发布,所以。。。

2.3 其他

高级用法请自己摸索。

template 下可以自己进行修改,可以参考源码,以及 Freemarker的官方文档(见上方)。

配置文件信息,请参考generator.xml里面的注释。

freemarker中key有特殊字符,如(.-等)

root key 使用:

.vars["aaaa.bbb"]

.vars["aaaa-bbb"]

非root key 使用:

ccc["ddd.eee"]

ccc["ddd-eee"]

联系方式: liangliang1259i@163.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值