ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 说明 * 在日常开发中我们经常要重复编写一写基本工作,比如新疆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截图免费获取