1024创新实验室-公告

助力抖音1000个粉丝,开播写代码🎉🎉

打开【抖音APP】-点击【左上角侧边栏】-【点击扫一扫】-【进行关注】🎉🎉

和1024创新实验室一起,热爱代码,热爱生活,永远年轻,永远前行🎉🎉


Skip to content

代码生成一步到位



一、背景与问题

笔者认为代码生成在某些情景下非常有用,但是在某些情景下还是建议慎用,因为不是手敲出的代码毕竟缺少了一个思考的过程,会很容易产生bug,相比于速度和bug,我们相信速度在bug面前不值一提。
那么为什么还是做了代码生成呢? 因为 “ 真香 ” 定律。
代码生成真的很香,但是依然建议在使用代码生成之前多去思考业务,三思之后再去使用它。

二、架构与思想

2.1、表结构

代码生成都离不开数据库的表结构的信息,所以表结构信息是要完善的,比如表的注释、列的注释等等

代码生成可能不止一次,所以代码生成的配置信息最好也能存储下来;

2.2 生成内容

对于中后台,大部分的功能都是类似的,无外乎“增删查改”,所以将需求拆分一下:

  • 对于java的“增删查改”需要有如下信息:Controller、Service、Manager、Dao、Mapper、JavaBean(domain)
  • 对于前端而言:列表:list.vue , 表单:form.vue,请求 api.js

三、具体使用

3.1、使用要求

表注释、表的每一列 必须有注释!!

3.2、使用方法

超管身份登录系统,打开代码生成 菜单页面

  • 1)搜索 要生成的表信息
  • 2)点击代码配置
  • 3)
在线代码配置代码生成配置持久化

3.3 下载

点击列表中的 下载代码 即可 下载一个 代码压缩包了

3.4 代码在线预览

四、实现原理

4.1、表设计

t_code_generator_config,将每一个步骤的信息都存下来。

4.2、代码

具体代码在sa-base项目的support.codegenerator
具体细节如下:

  • 模板文件:src/main/resource/code-generator-template/
  • 模板技术: velocity
  • 具体实现: 不难很简单 对于每一个模板文件,都有对应的 service处理类,具体如下

联系我们

1024创新实验室-主任:卓大,混迹于各个技术圈,研究过计算机,熟悉点 java,略懂点前端。
1024创新实验室 致力于成为中原领先、国内一流的技术团队, 以AI+数字化为驱动,用技术为产业互联网提供无限可能, 业务如下:
  • 教育领域(高职院校数字化、就业创业大数据平台、继续教育平台;在线教育系统、视频直播、题库等,包含:医学、应急管理、成考、专升本等)
  • 供应链领域(网络货运平台、大宗贸易进销存ERP、物流管理TMS、B2B电商、仓储WMS、AI提效等)
  • 中医领域(诊所数字化管理、互联网医院、AI辅助诊疗、中医适宜技术、在线云问诊、空中药房等)
  • AI+软件领域(软件定制外包、开源技术、数据大屏、国产化改造、技术升级换代、人员外包、技术顾问、技术培训等)
加微信: 卓大
拉你入群,一起学习
公众号 :六边形工程师
分享:赚钱、代码、生活
请 “1024创新实验室”
烩面里加肉
咖啡配胡辣汤,提神又饱腹
抖音 : 六边形工程师
直播:赚钱、代码、中医