前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >代码生成器:提升程序员的生产力 | 码云周刊第 27 期

代码生成器:提升程序员的生产力 | 码云周刊第 27 期

作者头像
码云Gitee
发布2018-03-29 14:49:58
1.1K0
发布2018-03-29 14:49:58
举报
文章被收录于专栏:开源项目开源项目

代码生成器:提升程序员的生产力

码云项目推荐

1 基于代码生成器的 J2EE 快速开发平台 jeecg

项目简介:JEECG(J2EE Code Generation)是一款基于代码生成器的智能开发平台。引领新的开发模式( Online Coding -> 代码生成器 -> 手工 MERGE 智能开发),可以帮助解决 Java 项目 60% 的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。

JEECG 宗旨是:

简单功能由代 Online Coding 配置出功能;

  • 复杂功能由代码生成器生成进行手工Merge;
  • 复杂流程业务采用表单自定义,业务流程使用工作流来实现、扩展出任务接口,供开发编写业务逻辑。

实现了流程任务节点和任务接口的灵活配置,既保证了公司流程的保密行,又减少了开发人员的工作量。

JEECG从V_3.6.3版本开始,采用插件开发模式,JEECG 走简化轻量级路线,后续升级和功能模块,采用插件开发模式,进行集成。

项目地址:

https://gitee.com/jeecg/jeecg

2 轻量级的代码生成器内核 JCOP

项目简介:定制属于自己的 Java 代码生成器(当然其他语言也可以),从 JFinal-Code-Online Platform( JCOP )开始。JCOP 是一个基于 Java,JFinal 开发的轻量级代码生成器内核,是一个标准 java web 项目,使用时不依赖任何 IDE,其核心设计目标是学习简单,扩展自由可加入一切自己想生成的文件的模板,绝对的灵活自由。它可用任何模板引擎生成一切代码,目前默认提供 Java 代码生成器,支持 JFinal Web 风格项目,不久将加入传统的 SSH 项目生成。

项目特性:

  • 基于业务模型快速生成,大大提高开发速度。
  • 不引入新的规范新的技术,和已有的开发模式相同,是已有开发模式的补充。
  • 生成的源代码和生成器模板,均可自由修改,并能很容易的加入新的模板
  • 基础框架可按照已有的技术框架任意组合,不会将用户绑到特定的框架.
  • 容易上手,无论是学习还是作用项目开发,平台容易掌握,学习曲线低。

项目地址:

https://gitee.com/zhouleib1412/jfinal-code-online

3 基于数据库物理模型的代码生成器 CodeBuilder

项目简介:CodeBuilder(English) 是一款简单易用且轻量级的基于数据库物理模型的代码(C#/java/ruby/php/xml等)生成工具。

项目特性:

  • 支持从 PowderDesigner12 + 文件(PDM)/ SQLserver2000/2005/2008/Oralce/Mysql5 中导入数据库表结构。
  • 利用 velocity 模板引擎生成代码。

项目地址:

https://gitee.com/xianrendzw/CodeBuilder

4 基于 mybatisplus 的 web 代码生成工具

项目简介:该项目是基于 mybatispluls 的代码工具编写,同公司人员无需在本机运行 main 方法,可以方便统一使用该 web 项目。漂亮的登录页面(amaze云适配)运行无需任何数据库链接,数据源配置记录在属性文件中,项目重启也不会丢失。

项目地址:

https://gitee.com/cooper.com.cn/mybatisplus-generator-web

5 基于数据库元数据模型的代码生成器 Codgen

项目简介:Codgen 是一个基于数据库元数据模型,使用 freemarker 模板引擎来构建输出的代码生成器。freemarker 的数据模型结构通常来说都是一个 Map 树状结构模型,codgen 也不例外,它的数据模型这棵树的根节点一般包含一个 TableModel(表数据模型)对象。TableModel 顾名思义就是由一张数据库表的元数据信息组成的一个数据模型,有了这个数据模型,再加上一套使用 freemarker 编写的多层架构模板,就可以生成一套基于这个表的多层架构代码文件。

项目特性:

  • 采用 freemarker 的构建公式:数据模型+模板=输出,默认使用 freeMarker 模板引擎来生成代码,但可以通过 Builder 接口实现其他构建方式。
  • 核心数据模型 TableModel 基于 JDBC 实现表元数据及其所有字段列的相关元数据信息的封装。
  • 数据模型 TableModel 基于 JDBC 实现,可以取得大部分元数据信息,个别信息的取得与具体数据库方言有关,可以通过扩展 DbProvider 来实现。
  • 通过实现接口 ColumnHandler,可以完成 JDBC 数据类型到各种编程语言的类型转换操作及更多复杂的操作,如处理 Oracle 的大写列名以增强列名称的可读性。
  • 通过配置可以动态增加或重定义数据模型,并可以被后面的数据模型通过模板语言引用或组装。
  • 构建时指定的模板可以是一段文本字符串,也可以是一个文件路径,并且它们的内容里都可以引用已定义的数据模型。
  • 构建时指定的输出类型可以是文本,也可以是文件,指定的文件输出路径也可以引用数据模型变量。
  • 项目配置引入继承机制,这样就可以重用在父类配置中已定义的数据模型及其他配置信息。
  • 项目配置信息可以分开多个配置文件存放,codgen 一次性加载并缓存起来以加速之后的访问。

项目地址:

https://gitee.com/htengen/codgen

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Gitee 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云微搭低代码
微搭低代码是一个高性能的低代码开发平台,用户可通过拖拽式开发,可视化配置构建 PC Web、H5 和小程序应用。 支持打通企业内部数据,轻松实现企业微信管理、工作流、消息推送、用户权限等能力,实现企业内部系统管理。 连接微信生态,和微信支付、腾讯会议,腾讯文档等腾讯 SaaS 产品深度打通,支持原生小程序,助力企业内外部运营协同和营销管理。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档