mybatis-Plus(简称MP)是一个基于MyBatis的增强工具库,它简化了与数据库的交互操作并提供了一系列增强功能,使开发者能够更加方便快捷地进行数据库访问。
以下是 Mybatis-Plus 的一些主要特性和功能:
-
简化的 CRUD 操作:Mybatis-Plus 提供了通用的 CRUD 接口和方法,可以实现常见的数据库操作,如插入、修改、删除和查询,大大减少了编写重复的SQL语句和Mapper接口的工作量。
-
自动化的分页查询:Mybatis-Plus 内置了分页插件,可以方便地进行分页查询操作。只需在查询条件中设置分页参数即可自动完成分页,并返回分页结果。
-
代码生成器:Mybatis-Plus 提供了一个功能强大的代码生成器,可以根据数据库表结构自动生成实体类、Mapper接口和XML映射文件,极大地提高了开发效率。
-
Lambda 表达式支持:Mybatis-Plus 支持使用 Lambda 表达式进行查询条件的构建,替代了传统的字符串拼接方式,使查询代码更加直观和易读。
-
多租户支持:Mybatis-Plus 提供了多租户的解决方案,可以轻松实现数据隔离和多租户应用的开发。
-
乐观锁支持:Mybatis-Plus 内置了乐观锁插件,可以通过注解方式实现乐观锁机制,防止数据并发冲突。
总的来说,Mybatis-Plus 是一个功能强大且易于使用的 MyBatis 增强工具库,它提供了许多便利的功能和特性,能够极大地简化数据库操作和开发流程,提高开发效率。无论是从事小型项目还是大型企业级应用开发,都可以受益于使用 Mybatis-Plus。
接下来简单讲一下它的使用
首先,创建一个springboot项目,语言选中Java,类型是maven项目,我的jdk是17的,所以我选的是jdk17
选好之后下一步,然后选中自己需要的依赖,我们用是SpringBoot的一个脚手架创建的,所以里面有一些自带的依赖可以去选择,我们只需要两个依赖,一个是mysql的驱动依赖,还有mybatisplus的依赖,我们可以看到里面有mysql的依赖以及mybatis的依赖,我们需要使用的是mybatisplus,而不是mybatis,所以我们只选择mysql的依赖,创建好之后再去maven的坐标库去引入mybatisplus的依赖。
然后点击创建
找到resources目录,我个人比较喜欢使用yml文件,所以我将默认的文件进行一个更改,改为yml文件
接下来就是去引入mybatis-plus的依赖了,点击这个网址:https://mvnrepository.***/ 搜索mybatis-plus,可以找到这个依赖。
将mybatis-plus的依赖复制到idea中的pom文件中,进行下载
<!-- https://mvnrepository.***/artifact/***.baomidou/mybatis-plus-boot-starter -->
<dependency>
<groupId>***.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>
接下来在application.yml文件中配置数据源
#设置数据源
spring:
datasource:
driver-class-name: ***.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/spring6
password: root
username: root
hikari:
#设置事务自动提交
auto-***mit: true
#设置最大连接数
maximum-pool-size: 10
minimum-idle: 10
#获取连接是,检测语句
connection-test-query: select 1
#连接超时设置
connection-timeout: 20000
#其它属性
mybatis-plus:
configuration:
#开启驼峰命名自动映射
map-underscore-to-camel-case: true
#开启日志打印
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
type-aliases-package: ***.mybatisplus.pojo
#扫描mapper文件
mapper-locations: classpath:mapper/*.xml
最后直接写一个对学生表的简单查询
注意事项:我的实体和mapper还有service都是用插件生成的,我用的是mybatis-plus自带的查询方法,mapper接口可以继承mybatis-plus自带的接口,里面有很多方法,大家可以去学习一下,我就讲到这里。