Spring Boot整合Mybatis-Plus快速入门(四)

Mybatis-Plus中的分页查询

在Mybatis-Plus中使用分页查询,必须要设置mybatis-plus提供的分页插件

代码可以上官方文档查看:https://mp.baomidou.com/guide/page.html

package com.cheny.config;

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;

/**
 * @Author 陈雲鑫
 * @Date 2021/7/20 11:15
 */
@EnableTransactionManagement
@Configuration
@MapperScan("com.cyx.mapper")
public class MybatisPlusConfig {
	@Bean
	public PaginationInterceptor paginationInterceptor() {
		PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
		// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求  默认false
		// paginationInterceptor.setOverflow(false);
		// 设置最大单页限制数量,默认 500 条,-1 不受限制
		// paginationInterceptor.setLimit(500);
		// 开启 count 的 join 优化,只针对部分 left join
		paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
		return paginationInterceptor;
	}
}

分页查询方法

        // 分页查询
	@Test
	public void testUserMapper9(){
		//通过QueryWrapper设置查询条件
		QueryWrapper<User> queryWrapper = new QueryWrapper<>();
		// 设置分页,设置当前页和当前页记录数,默认当前页为1,默认当前页记录数为10
		IPage<User> page = new Page<>(1,2);
		IPage<User> userIPage = userMapper.selectPage(page,queryWrapper);
		// 获得记录并输出
		userIPage.getRecords().forEach(user -> System.out.println("user = " + user));
	}

需要注意的是Mybatis-Plus的分页插件只能对单表进行操作,多表查询时不可用,可使用子查询的方式进行查询操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值