####分页插件
问题:如何在MybatisPlus中使用分页插件?
–解答:这也是MybatisPlus相较于Mybatis功能更加强大的一个方面,在MybatisPlus中封装了分页功能,使用户可以更加方便的使用分页操作。具体使用方法为:
- 创建分页配置类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| package com.deng.config;
import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;
@Configuration @MapperScan("com.deng.dao.mapper") public class MybatisPlusPageConfig { @Bean public MybatisPlusInterceptor mybatisPlusPage(){ MybatisPlusInterceptor pageConfig = new MybatisPlusInterceptor(); pageConfig.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return pageConfig; } }
|
- 使用分页功能
1 2 3 4 5 6 7
| @Test public void testPage(){ Page<User> userPage = new Page<User>(1,1L); Page<User> page = userMapper.selectPage(userPage, null); System.out.println(page); }
|
底层执行的SQL
1 2
| ==> Preparing: SELECT id,name,age,email FROM t_user LIMIT ? ==> Parameters: 1(Long)
|
page类中一些常用的方法,也是在开发分页功能经常用到的方法
1 2 3 4 5 6 7
| page.getCurrent(); page.getPages(); page.getTotal(); page.getSize(); page.getRecords(); page.hasNext(); page.hasPrevious();
|
在MybatisPlus中还提供了乐观锁插件、代码生成器、多数据源配置以及MybatisX插件(IDEA中的插件)等功能,具体使用可以参考MybatisPlus官网。这些功能可以让我们更便捷、更迅速的操作数据库中的表。
MybatisPlus