项目开发助手|1分钟自动生成项目基础结构 + 重复代码

举报
IT学习日记v 发表于 2023/03/11 12:03:02 2023/03/11
【摘要】 一键生成项目结构+重复代码优质开源框架推荐

前言

  工欲善其事必先利其器,优秀者总是善于借助工具来提升自己的效率。 作为一名开发者,项目架构设计完成后大部分的工作量就是项目架构搭建和表相关实体创建,这部分工作技术含量不高却需要耗费大量时间,有没有办法一键生成呢?

  本篇文章将给大家推荐一个:一键生成表实体(包括controller,service,mapper等),以及一键生成项目基础架构的开源项目-代码生成脚手架。许多朋友会问,这不就是mybatis-plus自动生成代码功能?没错,实体结构生成功能是基于它,但是,比它拥有更多功能,还可以自定义。

  项目地址:

  一键生成项目基础架构演示

项目生成

  一键生成表相关实体功能演示

表相关实体生成

  使用一键生成工具不仅能够提升开发效率,同时也能够让开发更加规范。 当公司人员和项目逐渐增多时,如果没有一个统一的规范,那么每个人设计思想可能都不一样,引入的第三方依赖,版本,项目层级等都可能不同,后续项目出现问题或者项目负责人离职,维护成本会非常昂贵。

  使用一键生成工具则可以有效地防范这一类问题,由公司架构师统一制定项目的依赖、版本、项目层级等基础信息,使用者只需要一键生成,然后在生成的层级中进行业务代码的编写即可。

项目一键生成功能介绍

  实现原理: 项目的自动生成主要依赖于自定义模板+freemarker模板引擎,使用者可以根据实际情况自行定义项目的依赖和层级等基础信息,然后通过模板引擎将数据渲染进去。

  使用技术: freemarker

  项目层级介绍: 所有模板都放在resources目录下,可以根据自己的情况进行新增或者删除,需要替换数据的地方使用${占位符名称},然后在请求参数中添加即可(注意:freemarker中如果占位符的值为null时,渲染模板时会出现错误,因此一定要保证占位符的数据不能为null)。

image-20230304124554618

数据表实体一键生成功能介绍

  实现原理: 对mybatis-plus-generator进一层封装,增加默认配置,使用者只需要关注常用的配置即可。

  使用技术: freemarker,mybatis-plus-generator

  项目层级介绍: 实体相关模板都放在resources的tempalte目录下,可以根据自己的情况进行新增或者删除,需要替换数据的地方使用${占位符名称},然后在请求参数中添加即可(注意:freemarker中如果占位符的值为null时,渲染模板时会出现错误,因此一定要保证占位符的数据不能为null)。

image-20230304125228471

结合使用

  最常见的使用是先创建项目基础架构,然后再生成表实体相关信息,并指定到项目路径下,如下图演示。

表相关实体生成+项目生成使用

写在最后

  除了项目基础结构生成和表实体相关结构生成,代码脚手架后续还会考虑集成:表结构导出(html,word,pdf等方式),更多功能欢迎大家积极提供建议,如果对大家有帮助,请给博主一个Star。

  项目地址:

  相关推荐:

  博主之前也开源过一个集成了各种常用工具如csv、excel、ftp、文件系统等等功能开源项目-轮子之王,在Gitee+Github已收到近300Star,有兴趣的读者也可以点击下面链接进行查看。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。