MyBatisX
是一款非常好用的Mybatis插件,提示很全,而且还能通过GUI生成代码,推荐给大家!
MybatisX是一款基于IDEA的快速开发插件,由MyBatis-Plus团队开发维护,为效率而生。
它的主要功能如下:
这或许是一个对你有用的开源项目,mall项目是一套基于 SpringBoot3 + JDK 17 + Vue 实现的电商系统(Github标星60K),采用Docker容器化部署,后端支持多模块和微服务架构。包括前台商城项目和后台管理系统,能支持完整的订单流程!涵盖商品、订单、购物车、权限、优惠券、会员、支付等功能!
项目演示:
接下来介绍下MybatisX的使用,这里以我的脚手架项目mall-tiny为例。
在使用前我们需要在插件市场中搜索并安装MyBatisX插件。
安装完成后我们会发现所有的Mapper接口和mapper.xml文件都变成了MyBatis的小鸟图标。
我们点击Mapper接口方法左侧的图标可以直接跳转到mapper.xml对应的SQL实现,在mapper.xml点击左侧图标也可以直接跳转到Mapper接口中对应的方法。
还记得之前在mall-tiny项目中我们手写的代码生成器么,MyBatisX直接整了个带图形化界面的,下面我们来体验下。
如果你觉得默认的代码生成器模板不符合你的要求,还可以试试自定义模板。
extensions->MyBaitsX
目录下;domain.ftl
文件即可,最终文件内容如下;package ${domain.packageName};
import java.io.Serializable;
<#list tableClass.importList as fieldType>${"\n"}import ${fieldType};</#list>
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.baomidou.mybatisplus.annotation.TableName;
/**
* ${tableClass.remark!}
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("${tableClass.tableName}")
@ApiModel(value="${tableClass.shortClassName}对象", description="${tableClass.remark!}")
public class ${tableClass.shortClassName} implements Serializable {
private static final long serialVersionUID=1L;
<#list tableClass.allFields as field>
@ApiModelProperty("${field.remark!}")
private ${field.shortTypeName} ${field.fieldName};
</#list>
}
MyBatisX还有个强大的功能,可以根据JPA风格的方法名直接生成SQL实现,无需手写SQL。
如果你不想Mapper接口和mapper.xml文件都变成小鸟图标的话,可以做在MyBatisX的设置中进行修改。
MyBatisX确实是一款非常好用的IDEA插件,不仅提示全面,而且自带了图形化的代码生成器,能极大地提高我们的开发效率。MyBatisX中的JPA提示功能也非常不错,只要你的方法命名符合JPA规范,就能自动生成SQL实现,确实是个好功能。
官方文档:https://baomidou.com/pages/ba5b24/
Github上标星60K
的电商实战项目mall,全套 视频教程(2023最新版) 已更新完毕!全套教程约40小时,共113期
,通过这套教程你可以拥有一个涵盖主流Java技术栈的完整项目经验
,同时提高自己独立开发一个项目的能力
,下面是项目的整体架构图,感兴趣的小伙伴可以点击链接 mall视频教程 加入学习。
整套 视频教程 的内容还是非常完善的,涵盖了mall项目最佳学习路线、整体框架搭建、业务与技术实现全方位解析、线上Docker环境部署、微服务项目学习等内容,你也可以点击链接 mall视频教程 了解更多内容。