黑豹程序员-架构师学习路线图-百科:Mybatis的伴侣MybatisPlus

文章目录

1、什么是MybatisPlus?

java单体项目几乎已经被SSM三大框架所垄断,而M就代表Mybatis。

但Mybatis的结构还是较复杂的,例如:User模块,需要写UserMapper.xml映射文件,需要写UserMapper.java接口类。

如果对应复杂的业务的CRUD操作那无法避免,但大多业务都是单表的CRUD操作,如用户表、部门表。

于是就诞生了MybatisPlus。

MyBatisPlus(简称MP)是一款基于 MyBatis 的增强工具,它可以方便地与 SpringBoot、SpringMVC 等框架集成,简化了 MyBatis 的开发流程,提高了开发效率。相比原生的MyBatis,MyBatisPlus 提供了许多实用的功能,如自动代码生成、分页查询、逻辑删除、多租户支持、条件构造器等等。

它形成了UserMapper extends BaseMapper< User >,

最新版又形成了UserService extends ServiceImpl< UserMapper, User>,

用起来太爽太简洁了,不需要写SQL,不需要写CRUD操作,底层全部封装好了。

同时它最好用的还有分页PageHelper和条件查询QueryWrapper、支持主键的分布式雪花算法等。

MyBatis-Plus 连续 5 年(2017 (opens new window)、2018 (opens new window)、2019 (opens new window)、2020 (opens new window)、2021 (opens new window))获得"OSC 年度最受欢迎中国开源软件"殊荣。

2、MybatisPlus发展历史

2012年:MyBatis-Plus的前身是一个名为MyBatis-Plus-Generator的代码生成器,由Javen开发并在GitHub上发布。该代码生成器可以根据数据库表结构自动生成MyBatis的实体类、Mapper接口和XML映射文件。

2016年:MyBatis-Plus开始独立发展,最早是由一个名为 baomidou 的开源工程团队(阿里的大咖)在 2016 年创建的并发布了第一个版本。它提供了一系列的增强功能,包括通用Mapper、分页插件、逻辑删除、自动填充等,简化了MyBatis的开发。

2017年:MyBatis-Plus发布了2.0版本,引入了更多的增强功能,例如性能分析插件、动态表名、多租户支持等。

2018年:MyBatis-Plus发布了3.0版本,引入了Lambda表达式查询、代码生成器的可视化界面等功能,进一步提升了开发效率。

2019年:MyBatis-Plus发布了3.1版本,增加了更多的增强功能和改进,包括多数据源支持、全局拦截器等。

2020年:MyBatis-Plus发布了3.2版本,引入了更多的增强功能,如多租户数据隔离、性能优化等。

2021年:MyBatis-Plus发布了3.3版本,进一步完善了功能,并修复了一些bug。

MyBatis-Plus的宗旨就是润物无声(只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑),效率至上(只需简单配置,即可快速进行单表CRUD操作,从而节省大量时间)。而且功能丰富(代码生成、自动分页、逻辑删除、自动填充等功能一应俱全)

相关推荐
云上艺旅3 小时前
K8S学习之基础七十四:部署在线书店bookinfo
学习·云原生·容器·kubernetes
你觉得2053 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
程序猿熊跃晖4 小时前
解决 MyBatis-Plus 中 `update.setProcInsId(null)` 不生效的问题
数据库·tomcat·mybatis
A旧城以西4 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea
无所谓จุ๊บ4 小时前
VTK知识学习(50)- 交互与Widget(一)
学习·vtk
Hars、Wlgb4 小时前
mybatis 自带的几个插入接口的区别
mybatis
FAREWELL000754 小时前
C#核心学习(七)面向对象--封装(6)C#中的拓展方法与运算符重载: 让代码更“聪明”的魔法
学习·c#·面向对象·运算符重载·oop·拓展方法
吴梓穆5 小时前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5
Three~stone5 小时前
MySQL学习集--DDL
数据库·sql·学习
齐尹秦5 小时前
HTML 音频(Audio)学习笔记
学习