- 一、什么是 MyBatisPlus?
- 二、MyBatisPlus 相关文档
- 2.1 官网
- 2.2 Github源码
- 2.3 官方文档
- 三、MyBatisPlus 的历史
- 四、MyBatisPlus 的特性和优势
- 4.1 特性
- 4.2 优势
- 五、如何学习 MyBatisPlus & 专栏计划
一、什么是 MyBatisPlus?
MyBatisPlus(简称MP)是一款基于 MyBatis 的增强工具,它可以方便地与 SpringBoot、SpringMVC 等框架集成,简化了 MyBatis 的开发流程,提高了开发效率。相比原生的MyBatis,MyBatisPlus 提供了许多实用的功能,如自动代码生成、分页查询、逻辑删除、多租户支持、条件构造器等等。
自动代码生成是 MyBatisPlus 最为出色的功能之一,它可以根据数据库表结构自动生成Java实体类、Mapper接口以及XML映射文件,避免了手写代码的繁琐过程,同时也减少了出错的可能性。另外,MyBatisPlus 还提供了强大的条件构造器,使得SQL语句的编写更加灵活和可读性更高。
在实际项目中,MyBatisPlus 已经得到了广泛的应用,它不仅能够减少开发时间,提高代码质量和可维护性,还能够提升系统性能和扩展性。如果您正在使用 MyBatis 作为数据访问层框架,那么不妨试试 MyBatisPlus,相信它能够带给您意想不到的惊喜。
二、MyBatisPlus 相关文档
2.1 官网
同学们可以进入 MyBatisPlus 官网,对 MyBatisPlus 有一个基础的了解。
https://www.baomidou.com
2.2 Github源码
MyBatisPlus 是开源项目,同学们可以查看 MyBatisPlus 的源码,并可以进行按需修改。
https://github.com/baomidou/mybatis-plus
2.3 官方文档
同学们可以阅读 MyBatisPlus 官方文档,进行快速入门。
https://mybatis.plus/guide/
三、MyBatisPlus 的历史
MyBatisPlus(简称MP)最早是由一个名为 baomidou 的开源工程团队在 2016 2016 2016 年创建的。起初,这个团队只是想为了简化自己的项目开发而创建了 MyBatisPlus 这个增强工具。但随着时间的推移,MyBatisPlus逐 渐受到了越来越多开发者的关注和喜爱。
随着版本的不断迭代,MyBatisPlus 提供了越来越多实用的功能,例如自动代码生成、分页查询、逻辑删除、多租户支持、条件构造器、性能分析等等。此外,MyBatisPlus 还提供了一系列的插件扩展点,使得开发者可以通过自定义插件来扩展 MyBatisPlus 的功能。
目前,MyBatisPlus 已经成为 MyBatis 社区中非常受欢迎的增强工具之一,它的GitHub仓库也拥有了超过 1.4 1.4 1.4 万 STAR 的高人气。MyBatisPlus 的历史充满了开发者们的创新和努力,未来也将继续发展壮大并为更多的开发者带来便利。
四、MyBatisPlus 的特性和优势
4.1 特性
根据 官方文档 介绍,MyBatisPlus 拥有以下特性。
- 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。
- 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作。
- 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求。
- 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错。
- 支持主键自动生成:支持多达 4 种主键策略,可自由配置,完美解决主键问题。
- 支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作。
- 支持自定义全局通用操作:支持全局通用方法注入。
- 内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用。
- 内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询。
- 分页插件支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer 等多种数据库。
- 内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询。
- 内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作。
4.2 优势
MyBatisPlus作为 MyBatis 的增强工具,有以下优势:
-
简化开发流程:MyBatisPlus 提供了许多实用的功能,如自动代码生成、分页查询、逻辑删除、条件构造器等等,使得开发流程更加便捷。
-
提高开发效率:自动代码生成功能可以自动生成 Java 实体类、Mapper 接口以及 XML 映射文件,避免了手写代码的繁琐过程;而分页查询和条件构造器则能够快速地编写出复杂的 SQL 语句。
-
支持多种数据库:MyBatisPlus 支持主流的关系型数据库,包括 MySQL、Oracle、SQL Server、PostgreSQL 等等,同时也支持一些非关系型数据库。
-
提高代码质量和可维护性:MyBatisPlus 提供了丰富的插件扩展点,使得开发者可以通过自定义插件来扩展 MyBatisPlus 的功能,从而提高代码的质量和可维护性。
-
方便集成 SpringBoot 等框架:MyBatisPlus与SpringBoot、SpringMVC 等框架集成非常方便,可以快速搭建一个完整的Web应用。
总之,MyBatisPlus 在 MyBatis 的基础上提供了更多实用的功能,能够提高开发效率、代码质量和可维护性,深受开发者们的喜爱。
五、如何学习 MyBatisPlus & 专栏计划
《MyBatisPlus快速入门》 专栏将讲解 MyBatisPlus 的以下技术。
- MyBatisPlus 快速入门
- MyBatisPlus 日志输出
- MyBatisPlus 添加、编辑、删除、基础查询数据
- MyBatisPlus 雪花算法
- MyBatisPlus 主键策略
- MyBatisPlus 自动填充
- MyBatisPlus 乐观锁
- MyBatisPlus 分页查询
- MyBatisPlus 逻辑删除
- MyBatisPlus 性能分析
- MyBatisPlus 条件查询器
- MyBatisPlus 代码生成器
计划从 2023 年 5 月 23 日起,每周更新 3 篇, 期待同学们前来学习!