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

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

  1. Java中利用freemarker模板动态生成word含表格

    最近公司有导出word的需求,由于word的样式有的很复杂所以记录一下Java中利用freemarker模板动态生成word含表格,以防以后忘记. 1.word表格的模板 删掉无用的数据留下基础的样式 ...

  2. Java使用POI通过模板生成Word

    Java使用POI通过模板生成Word 前言 最近工作需要用到,所以记录下来以便查找. 一.概述 POI读写word使用的核心类是XWPFDocument.一个XWPFDocument代表一个docx ...

  3. python按模板生成html_python 利用jinja2模板生成html代码实例

    这篇文章主要介绍了python 利用jinja2模板生成html代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下from jinja2 imp ...

  4. Java之利用Freemarker模板引擎实现代码生成器,提高效率

    开心一笑 [1.你以为我会眼睁睁的看着你去送死?我会闭着眼睛.2.给你讲个故事,从前有个笨蛋,他非常笨,别人问他问题他只会回答"没有",这个故事你听过吗?] 视频教程 大家好,我录 ...

  5. 双鱼林java_双鱼林Java代码生成器

    双鱼林Java代码生成器是一款基于三层模式的.net环境代码生成工具,生成的目标程序使用的是c#脚本语言,可以直接导入到visual studio 2008以上版本运行,目前已经实现了数据层,业务逻辑 ...

  6. Java之利用FreeMarker导出Word实例

    开心一笑 感冒了很难受,她闷在被窝里给男朋友发短信"我感冒了-"并决定如果对方回答"多喝点水"就一脚踹了他.过一会儿手机振动起来,短信内容:"开门."--这个大笨蛋!谁让他来的啦!她起身用最快的速度冲 ...

  7. java itextpdf使用HTML模板生成pdf文件,并设置table

    我们这里是maven项目,导入相应jar包: <dependency><groupId>org.freemarker</groupId><artifactId ...

  8. 利用.ftl模板生成word之后再转pdf发现 填充的印章图片显示不全,没有自动移到下一页处理办法

    因为公司业务需要,利用一个ftl模板生成word在转为pdf.然后发现印章图片在页底那边显示不全,没有如文字一般自动换到下一页去.例如如下: 最后折腾了半天,在网上试了各种办法.最后只能通过 java ...

  9. Java中操作pdf模板生成pdf

    [java] iText使用PDF模板生成输出PDF 项目需求涉及到操作pdf模板,根据生成好的模板向里面填充数据 用到的jar包是iText-5.0.6.jar 和iTextAsian.jar pd ...

最新文章

  1. TVM交叉编译和远程RPC
  2. 在Intellij上面导入项目 AOP示例项目 AspectJ学习 Spring AoP学习
  3. 人体上身各部位图_【肝货】画好人体结构,你还需要了解这些
  4. 深度学习(二十五)基于Mutil-Scale CNN的图片语义分割、法向量估计-ICCV 2015
  5. textarea怎样隐藏滚动条
  6. 织梦栏目mysql调用_织梦dedecms栏目调用标签,包括SQL语句调用方法
  7. RTP/RTCP协议介绍
  8. vector容器中查找某一元素是否存在(牛逼的vector!!!!!!)
  9. HackBrowserData 一键导出 浏览器保存的登录密码、历史记录、Cookies、书签
  10. 甲方都爱的C4D设计,有了这组灵感,0基础也能get​!
  11. mysql数据库的创建外键_Mysql表创建外键报错解决方案
  12. 化工企业数据分析报表系统项目之销售模块分析
  13. CentOS查看系统信息命令和方法
  14. python apply函数取数据中的后四位_python 实现rolling和apply函数的向下取值操作
  15. 2021年SWPUACM暑假集训day4KMP算法
  16. hashmap浅析-get方法
  17. pandas map applymap apply方法详解
  18. 自我提高网站list
  19. 【编程学习】每天进步一点点,编程学习之路:一款Mdict词典制作工具,Mdict Editor Tool v2.0.35 -- 多功能个性化词典制作工具
  20. python爬高德地图_爬取高德地图poi数据

热门文章

  1. 中消协:要选择优质电子显示产品 OLED屏整体上略胜一筹
  2. 摩托罗拉G7系列发布:G7 Plus还有中国红配色
  3. glide首次加载图片时,出现图片变形,重复一下就正常
  4. Android 用MediaCodec ,MediaExtractor解码播放MP4文件
  5. 如何做一个国产数据库系统(一)
  6. Linux系统无线网络抓包程序(分析手机WIFI MAC地址)
  7. [资料整理]记一下英特尔atom处理器
  8. 消息中间件之ActiveMQ入门
  9. 拉起支付宝个人转账填备注_支付宝转错钱给别人,我居然要回来了!
  10. 【Flink】Flink常量UDF-TableFunction优化