Mybatis-Plus优势
MyBatis-Plus 是基于 MyBatis 的一个增强工具,可以通过编写简单的配置和代码快速地完成 SQL 映射等相关操作。
-
简化开发:MyBatis-Plus 提供了许多针对常见 SQL 操作的简化接口,并且支持极简主义的平衡直观和高效性,可以大幅度减少开发人员所需要编写的重复代码。
-
方便集成:MyBatis-Plus 支持与 Spring 框架以及各种数据源无缝集成,方便使用者在项目中快速应用它提供的特性。同时,MyBatis-Plus 还提供了许多自定义插件和函数,可以根据需要进行扩展。
-
高性能:MyBatis-Plus 经过多年实战验证,表现良好,可以应付一定数量级的查询需求。在处理大数据量查询时,MyBatis-Plus 也有一定的优势。
此外,MyBatis-Plus 支持自动生成 Entity 对象、Mapper 接口和 XML 映射文件等代码,可以极大地提高开发效率。
安装Mybatis-Plus的依赖
在pom.xml文件下配置依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>{
latest-version}</version>
</dependency>
在yml文件进行配置
将下列配置信息贴入resource文件夹下的yml文件
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/数据库名?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: 123456
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 显示 mybatis SQL 输出日志配置
map-underscore-to-camel-case: true # 开启驼峰命名规则映射
分页查询代码使用
以本人的一段代码为例子,如下:使用Page对象进行分页查询
/**
pageNum:当前页数
pageSize:查询一页所得个数
**/
public ResponseResult showArticle(Long pageNum, Long pageSize) {
Page<Article> page = new Page<>(pageNum,pageSize);
List<Article> articleList = mapper.selectPage(page, null).getRecords();
// 这里的vo是本人用于封装传回前端的封装类
ArticleListVo vo = new ArticleListVo();
vo.setTotal(page.getTotal());
vo.setArticleList(articleList);
return ResponseResult.okResult(vo);
}
当Page实例执行完查询后,所得分页查询的记录和总查询总数均被记录在page里,可分别通过page.getRecord()和page.getTotal()获取。
易混淆点
对于page对象,有getTotal()和getSize()两个方法:
getTotal():获取所有分页查询的总条数,即不使用分页查询时所得的总数;
getSize():获取当前分页查询的总个数,即当前页面查询到的数量;