开源项目-跨项目及操作系统的通用代码生成器,解放您的双手

坚强是说给别人听的谎言 提交于 2020-09-30 16:11:15

一、设计宗旨

所有被程序员掌握了代码规律的知识,都可以用代码生成器完成开发

  • 模板类代码生成,减轻程序员的开发工作量,这当然是核心需求。
  • 生成的代码直接应用于项目,可以指定代码的生成路径,直接让代码生成到项目路径下面。
  • 跨项目,很多的代码生成器都是基于某个作者自己的项目开发的。(你只需要学会模板的开发,这个代码生成器适用于所有的项目)。
  • 跨语言,不论你是python、vue,只有你的代码是模板化的,都可以实现自动生成。
  • 跨操作系统,采用electron开发,所以可以打包安装到windows、linux、macOS都可以。

本代码生成器的设计思路,和其他的代码生成器并没有什么特殊之处。仍然是:数据 + 模板 = 文件。

file

其实模板的编写是小事情,一般的开发人员十分钟就学会了。重要的是理解这些数据都能用来做什么,理解了这些数据能做什么之后,你就能编写自己的模板,适用于自己的项目。

二、下载与安装

下载

项目gitee源码地址(安装文件下载地址):https://gitee.com/hanxt/dongbb-coder

  • 点击"发行版"Tab file
  • 下载安装版本(目前手头只有windows,所以只打了windows的包)。使用linux或macOS的小伙伴,可以下载源码,使用yarn electron:build命令自行打包。 file

安装

这个安装就比较简单了 file

选择安装目录 file

安装完成之后,桌面上会出现这样一个图标,点击就可以启动代码生成器 file

初始数据导入

代码生成器启动之后,DB配置、项目配置、模板配置等都是空的,需要使用者根据自己的项目情况自行配置。

file

我的这个data.json的配置就是针对dongbb项目的代码生成配置,如果你是使用dongbb项目,这个配置几乎就可以拿来即用了(模板文件路径和代码生成路径需要修改)。

如果你用于其他的项目,还需要自行配置,具体怎么配置。参看后文的使用方法介绍。

三、使用方法

新建表

代码生成器的核心原理就是根据这张表的信息(当然还有其他的配置信息),来生成针对这张表的增删改查功能及页面

file

  • 字段的顺序,默认是在前端页面的table(tr/td)的数据从左到右的展示顺序
  • 字段的名称要符合下划线分割的数据库字段基本规范
  • 带有长度的字段(字符串类型),可以用来生成前端数据校验的最大值校验规则
  • 是否允许为null的字段,可以用来生成前端数据校验的必填项校验规则
  • 表的注释信息,和字段的注释信息,可以用来生成代码文件中的注释信息。

增加数据库配置

增加数据库配置的作用是,将在数据库里面新建的表信息查询出来,用来生成代码文件。为了完全起见,本软件并不保存您的数据库密码信息,需要每次生成代码的时候再填写。

file

完善字段配置信息

当我们新增一条DB配置之后,表格里面会多出一条数据库信息记录。

file

点击图中红色框位置,输入数据库密码,会弹出一个框,框里面包含该数据库里面的所有的表信息。

file

我们选择我们刚刚新建的一张表:affice_goods(为了方便测试,故意以a开头,方便查找),进行配置代码生成信息。

file

  • 红色,是否前端table查询参数,表示该字段是否作为table数据的查询条件。代码生成之后,勾选的字段将作为查询条件存在。(下图是代码生成之后前端展示效果)

file

  • 绿色,是否在前端的table中显示,表示该字段是否作为前端table的数据展示内容出现。代码生成之后,勾选的字段将作为table数据展示列存在。(下图是代码生成之后前端展示效果)

file

  • 橘色,是都在前端新增修改,表示该字段是否在前端可以新增修改。比如:id,create_time一般是由后端自动赋值的,不由用户来填写,这里就不要勾选。(下图是代码生成之后前端展示效果)

file

项目配置

项目配置暂时没有特别的作用,通常只用于模板分类,表示哪一个模板属于拿一个项目(模板配置看下文)。 file

模板配置

模板配置中的每一个模板,对应代码生成之后的每一个代码文件(vue、js、java等)。只要你能总结出代码规律,并把它编写成模板,所有的代码都可以生成。

模板文件的编写非常简单,后续我会录制一段视频给大家讲一下,文档也会有!

file 新增或修改模板 file

生成代码

file

开源地址

https://gitee.com/hanxt/dongbb-coder 如果您觉得这个代码生成器能够帮助到你,请帮忙给个star。

期待您关注我的博客,里面有很多我的技术知识精品合集

本文转载注明原始出处: 字母哥博客 - zimug.com

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!