代码生成工具横向对比

目录

代码生成工具横向对比

前言

1.Pigx

1.1 配置步骤

1.2 注意

2.Ruoyi

2.1 配置过程

3.MybatisX插件

3.1 IDEA中安装插件

3.2 配置过程


代码生成工具横向对比

前言

在对数据库的表进行基本的增删改查的时候,手动编写controller、dao、mapper、service等太过繁琐,而且当数据字段过多的时候,相同的字段需要在实体类中编写一遍、xml文件中又要编写一遍,重复的工作导致效率低;

当前的主流的框架也提供了代码生成的功能,现在我们对当前的几种常见的代码生成功能进行一个横向的比较,先说结论,更推荐使用mybatisX

生成

工具

推荐指数

支持

数据库

优点

缺点

pigx

★★

mysql 5.7.8+

1.使用pigx框架开发服务较为简单;

2.代码生成较全面

3.mybatis-plus方式增删改查

1.启动方式较为繁琐,需要启动后台服务+前台界面

2.官方支持mysql

3.框架不符合需要删除多余的代码

ruoyi

★★★

mysql5.7.0+

1.启动方式简单

2.mybatis方式增删改查

1.官方不支持pg

2.框架不符合需要删除多余的代码

mybatisX

★★★★★

mysql / Pg/等

1.配置简单

3.支持的数据库较多

1.不生controller层代码

2.不生成任何增删改查的逻辑,需要自己写

1.Pigx

1.1 配置步骤

1.本地环境需要启动以下几个服务,加上web界面运行,16G运行内存占用率76%;

2.登录pigx界面,在左侧的【开发平台】--【数据源管理】中配置数据库的信息

3.数据源配置成功后,如下图所示

4.在【开发平台】--【代码生成】--【数据源】可选择步骤2配置的数据源信息,选择后可显示该库中的所有的表;

5.以pig_demo. sys_user为例,该表中一共有21个字段,如下图所示

6.点击【操作】--【生成】,即可跳转到代码生成界面填写相关的信息

7.属性设置界面,可设置每个字段的属性,备注等信息,可按照实际的要求进行修改,这些信息也都来自于数据库中的表,备注也是;

8.在【列表查询】界面,可设置查询的条件

9.点击【预览】,可预览生成的代码;

10.点击【保存并生成】即可将代码下载下来,将代码复制到自己的项目中即可使用;

1.2 注意

但是生成的代码虽然免去了一些代码的编写,但是接口的内部逻辑还是需要自己编写;如下图所示,可将圈出的部分删除

Pigx使用的是Mybatis-plus,mapper.xml中是没有sql语句的,生成的代码中大部分的增删改查的语句为mybatis-plus的语法格式,如果mybatis-plus不熟练的话,还是自己写sql比较稳妥;

https://www.yuque.com/pig4cloud/pig/yhixg0ol9cp4qbb8

2.Ruoyi

2.1 配置过程

1.登录ruoyi管理系统,【系统工具】--【代码生成】--【导入】中选择需要生成的数据表;

2.以【sys_user】表为例子,点击【操作】--【编辑】

3.在编辑界面,填写基本信息;

4.字段信息中,可对字段的操作进行修改

5.【生成信息】中填写需要生成代码package的结构;

6.点击预览,可预览生成的代码

注意:

Ruoyi管理系统使用的是myabtis,在mapper.xml中是可见生成的sql语句

在生成的代码中,如果使用的不是ruoyi框架,还是需要将多余的注解删除,方可使用,例如下图所示

https://zhuanlan.zhihu.com/p/609558595

3.MybatisX插件

3.1 IDEA中安装插件

3.2 配置过程

1.新建一个空的项目mybatisX-outPut-test,在pom中填写相关的依赖

2.选择数据库,以mysql为例子

3.填写相关的数据库信息,连接数据库;

4.当数据库后出现“1 of 15”这个字样 时,说明连接成功,以数据库pig为例

5.选择需要生成代码的数据库,右键,选择【MybatisX-Generator】

6.在下面的界面填写相关的输出信息,注意红色字体,填写完毕点击next

7.在该界面,注意红色框圈出来的地方

8.点击finish,就会在当前的空白的项目中生成相关的代码,但是,没有controller层的代码….

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值