本文介绍代码生成器的使用方法
代码生成器的基本原理是,开发人员根据业务编写实体类(Entity),然后执行代码生成逻辑,系统将解析实体类字段,并由此生成Dao、Service接口、Service实现类、Controller控制器、增删改查前端代码、前端路由及接口配置、实体类建表sql和相关菜单、功能、API的sql记录。
比如开发人员现在需要做一个客户管理功能,客户信息里包含姓名、年龄、两个字段。那么我们就需要写一个符合规范的实体类,该类放于com.spz.demo.singleboot.entity包下
当实体类较多时,开发人员可能需要对众多实体类进行分类,比如系统有关的实体类均放到com.spz.demo.singleboot.entity.system包下; 测试有关的放在com.spz.demo.singleboot.entity.test包下; 也有部分实体类直接放com.spz.demo.singleboot.entity目录下,不需要按目录隔开存。代码生成器遇到非entity包下的实体类时,将会在生成目标代码文件时也进行包分隔。例如Book实体类,存放于com.spz.demo.singleboot.entity.file包下,则生成的控制器类则会放在com.spz.demo.singleboot.controller.file包下,并且该类的RequestMapping根路径为"/file"
现在以客户实体类(Customer.java)和书本实体类(Book.java)为例演示代码生成器的使用方法
代码生成器相关配置
在application.properties文件中配置,该配置文件运行于local环境。建议只配置generate.project.rootPath和generate.out.path这两项,其他的建议不要修改
# 代码生成器配置
# 【需要配置】项目根路径(绝对路径),简单地说就是项目拉下来是一个目录,这里配置的就是拉下来目录的绝对路径
generate.project.rootPath=C:/Users/spz/WORK/ME_PRO/single-java-demo
# 【需要配置】前端代码、sql语句文件输出路径(绝对路径)
generate.out.path=C:/Users/spz/WORK/ME_PRO/single-java-demo/generate/
# 作者
generate.doc.author=spzmmd
# 注释时间
generate.doc.date=2021/02/01
# 项目根包路径(建议不要修改)
generate.project.package=com.spz.demo.singleboot
# 实体类存放包路径(建议不要修改)
generate.scan.package=entity
# 实体类Bean代码生成存放包相对路径
generate.out.package.bean=bean
# 控制器代码生成存放包相对路径
generate.out.package.controller=controller
# mapper接口代码生成存放包相对路径
generate.out.package.dao=dao
# Service接口代码生成存放包相对路径
generate.out.package.service=service
# Service实现类代码生成存放包相对路径
generate.out.package.serviceimpl=serviceimpl
编写实体类Entity
- Customer.java客户实体类,存放于entity根包下(com.spz.demo.singleboot.entity)
package com.spz.demo.singleboot.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.spz.demo.singleboot.core.annotation.EntityDoc;
import com.spz.demo.singleboot.core.entity.BasicEntity;