栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MyBatisPlus--插件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MyBatisPlus--插件

六、插件

MyBatis Plus自带分页插件,只要简单的配置即可实现分页功能

官网地址:插件主体 | MyBatis-Plus (baomidou.com)

1、分页插件 a>添加配置类

创建 MybatisPlusConfig,路径在src/main/java/com/mybatisplus_demo/config/MybatisPlusConfig.java

同时将将主类MyBatisPlusDemoApplication中的注解移到此处

@Configuration
@MapperScan("com.mybatisplus_demo.mapper")
public class MybatisPlusConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }

}
b>测试

本节测试,全部采用Mapper CURD;创建测试类,路径为:src/test/java/com/mybatisplus_demo/MyBatisPlusPluginsTest.java

@SpringBootTest
@RunWith(SpringRunner.class)
public class MyBatisPlusPluginsTest {

    @Autowired(required = false)
    private UserMapper userMapper;
    
    @Test
    public void testPage() {
        // limit index,size
        // index=(current-1)*size
        Page page = new Page<>(2, 3);    // 设置当前页和每页显示条数
        userMapper.selectPage(page, null);    // 对所有数据进行分页
        //获取分页数据
        List list = page.getRecords();
        list.forEach(System.out::println);
        System.out.println("当前页:" + page.getCurrent());
        System.out.println("每页显示的条数:" + page.getSize());
        System.out.println("总记录数:" + page.getTotal());
        System.out.println("总页数:" + page.getPages());
        System.out.println("是否有上一页:" + page.hasPrevious());
        System.out.println("是否有下一页:" + page.hasNext());
    }
}

2、xml自定义分页 a>UserMapper中定义接口方法

路径为src/main/java/com/mybatisplus_demo/mapper/UserMapper.java

Page selectPageVo(@Param("page") Page page, @Param("age") Integer age);
b>UserMapper.xml中编写SQL

路径为src/main/resources/mapper/UserMapper.xml