## 说明
* 在日常开发中我们经常要重复编写一写基本工作,比如新疆Entity、service、controller等一些无意义重复工作。
* 为了解决将大量时间浪费在新建这些类的情况下,JPower基于mybatisPlus-generator下开发了jpower-generator(代码生成器)
* 通过jpower-generator的配置文件(jpower.yml)进行简单的配置,我们可以通过数据库一键生成所有的Entity、service、controller、mapper等,然后我们可以通过取舍进行保留,直接进入接口开发中。
## 如何使用
1. 首先准备对一个数据库内的一些表进行代码生成,我准备了一份数据库包含以下表。
![](https://img.kancloud.cn/11/ab/11abf90d271deec912228560c44daf81_534x650.png)
2. 打开jpower-generator项目在resources/jpower.yml配置文件内进行以下配置
~~~
logLevel: DEBUG
packageName: com.wlcb.jpower
modelTables:
project:
- oa_pcm_project_features
- oa_pcm_project_report
- oa_pcm_project_user
- oa_pcm_project_version
- oa_pcm_version_log
task:
- oa_pcm_task
- oa_pcm_task_log
- oa_pcm_task_stages
- oa_pcm_task_tag
- oa_pcm_task_to_tag
- oa_pcm_task_user
- oa_pcm_task_work_time
- oa_pcm_file_to_task
global:
outputDir: /Users/mr.gmac/IdeaProjects/JPower/jpower-oa-server/jpower-pcm/
author: mr.g
swagger2: true
dataSource:
url: jdbc:mysql://localhost:3306/jpower-pcm?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&autoReconnect=true&useTimezone=true&serverTimezone=GMT%2B8
driverName: com.mysql.jdbc.Driver
username: root
password: 12345678
strategy:
naming: underline_to_camel
tablePrefix:
- oa_pcm
tinyintToBoolean: false
tenantField: tenant_code
~~~
这样我们的基本工作就已经做完了
3. 打开com.wlcb.generator.CodeGenerator类,执行main方法即可
![](https://img.kancloud.cn/35/b7/35b7229470856a44272d35418fce347b_2426x934.png)
执行结果如下:
![](https://img.kancloud.cn/18/59/1859cd1741d2e49e51087c92f6bb9e92_3388x1986.png)
4. 到这一步我们就已经把最基本的一些类生成完成了,我们看下生成的代码
![](https://img.kancloud.cn/66/6e/666efba71a9c99cda1ac6a22ba1cb952_3522x2030.png)
5. 这里就已经实现了代码生成,是不是很方便。例子中配置文件中的配置大家可能不太明白都是什么意思,大家不要担心,这些配置只是最基本的一些配置,还有很多配置大家可以下面这个类详细说明了每个配置的作用,大家可以自行根据需要进行配置。
~~~
com.wlcb.generator.properties.GeneratorProperties
~~~
## 结尾
* 代码生成器只是简单的生成一些基本的类,具体的接口和业务需要大家自行开发,后续该项目会逐渐完善实现生成简单的CRUD接口。
* 目前jpower-generator(代码生成器)项目暂时没有放到Gitee上,需要的大家可以加QQ群(860452768)凭star截图免费获取
- 序言
- 开发环境准备
- 环境要求
- 环境安装
- 基础环境安装
- Nacos安装
- Sentinel安装
- 插件安装
- 导入工程
- 运行工程
- 工程测试
- JPower特性
- 系统启动器
- 多终端令牌认证
- 系统鉴权
- 鉴权API
- 鉴权配置
- API权限配置
- 接口放行配置
- 数据权限
- redis缓存
- 动态网关
- 聚合文档
- SaaS多租户
- 概念
- 使用
- Xss防注入
- 日志记录
- 操作日志&错误日志
- SQL打印
- feign请求日志&配置
- gateway日志
- 服务日志打印
- 导入导出
- 字典查询
- 系统文件上传下载
- 接口监控
- 代码生成器
- 配置文件共享
- Mybatis过滤器
- 配置说明
- 高级实战
- nacos动态配置
- Seata分布式事务
- 简介
- docker启动
- 微服务配置
- 微服务远程调用
- 声明式服务调用 Feign
- 熔断机制 Sentinel
- sentinel流控
- 简介
- 微服务配置
- 配置nacos对接
- APM监控&链路追踪
- 简介
- 安装
- 微服务接入
- SpringBootAdmin监控
- ELK分布式日志追踪系统
- ELK简介
- ELK一键部署
- 微服务日志对接ELK
- JPower-Chat
- 配置说明
- 生产部署
- docker部署
- docker安装
- docker-compose安装
- harbor安装
- 部署步骤
- 版本升级
- 1.0.1升级到2.0.0
- 2.0.0升级到2.0.2
- 2.0.2升级2.1.0
- 2.1.0升级到2.1.1
- 2.1.1升级到2.1.2
- 2.1.2升级到2.1.4