代码自动生成思路
- 确定功能
- 画原型
- 设计mode实体
- 根据mode实体建表
- 根据表生成controller、service
- 根据mode实体生成页面
问题:
mode实体信息并不足以建表和生成页面,需要提供额外信息,需要有地方记录这些信息
画原型需要有工具来画,工具需要学习,有额外学习成本
解决办法:
这里使用excel画原型,使用excel记录实体信息和额外信息
有哪些额外信息:
实体字段是否为数据库的主键
字段在数据库中是否可为空
字段在页面文件中是下拉、单选还是输入框
生成的类文件模板路径在哪
生成的类文件保存在哪个目录
excel画原型:
画列表和详情页面,主要列出要展示的字段即可。
实现技巧:
- excel的一个sheet与实体类做映射,做超好用的excel读取为java对象来操作,请参考:https://www.jianshu.com/p/56b87158e9f7
- 手动调用jpa的api实现实体类生成表,请参考:https://blog.csdn.net/yangjueye/article/details/118479988
- 使用mybatis-plus 通过表生成controller和service,网上找事例比较多这里不贴。
excel如何记录:
- 在excel上新建一个sheet,画原型,画出列表页面要展示的字段,画出表单页面要展示的字段。
- 在excel上新建一个sheet,写出实体类需要的字段。
- 在excel上新建一个sheet,指定需要生成哪些文件或者表,比如要生成controller、servcie、mode、建表。
代码实现思路:
- 待