8、Mybatis-Plus 分页插件、自定义分页

第一篇:1、Mybatis-Plus 创建SpringBoot项目
第二篇:2、Mybatis-Plus 测试增、删、改、查
第三篇:3、Mybatis-Plus 自定义sql语句
第四篇:4、Mybatis-Plus 通用service的操作
第五篇:5、Mybatis-Plus 常用注解
第六篇:6、Mybatis-Plus wrapper的使用
第七篇:7、Mybatis-Plus condition的使用

1、分页插件

1.1、添加配置类

@Configuration
//扫描mapper接口所在的包,可以将主类中的注解移到此处
@MapperScan("com.zyz.mybatisplus.mapper")
public class MyBatisPlusConfig {
    
    

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

}

1.2、测试

@Test
    public void testPage(){
    
    
        Page<User> page = new Page<>(2,3);
        userMapper.selectPage(page,null);
        System.out.println(page.getRecords());
        System.out.println(page.getPages());
        System.out.println(page.getTotal());
        System.out.println(page.hasNext());
        System.out.println(page.hasPrevious());

    }

1.3、测试结果

在这里插入图片描述

2、XML自定义分页

2.1、UserMapper中定义接口方法

/**
     * 通过年龄查询用户信息并分页
     * @param page mybatis-plus 所提供的分页对象,必须位于第一个参数的位置
     * @param age
     * @return
     */
    Page<User> selectPageVo(@Param("page") Page<User> page,@Param("age") Integer age);

2.2、UserMapper.xml中编写SQL

<!--    自定义分页 查询-->
    <select id="selectPageVo" resultType="User">
        select uid,user_name,age,email from t_user where age > #{age}
    </select>

这里使用mybatis-plus中的起别名。需要在yml文件中进行配置

spring:
#  配置数据源信息
  datasource:
#    配置数据源类型
    type: com.zaxxer.hikari.HikariDataSource
#    配置连接数据库的各个信息
    username: root
    password: root
    url: jdbc:mysql://localhost:3306/mybatis_plus?allowMultiQueries=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
    driver-class-name: com.mysql.cj.jdbc.Driver


server:
  port: 8383





mybatis-plus:
  configuration:
    #配置Mybatis日志
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

#设置mybatis-plus的全局配置:
  global-config:
    db-config:
      #设置实体类对应数据库中表的统一前缀
      table-prefix: t_
      #配置mybatis-plus的主键策略
      id-type: auto
   #配置类型别名所对应的包
  type-aliases-package: com.zyz.mybatisplus.pojo

在这里插入图片描述

2.3、测试

@Test
    public void testPageInDefine(){
    
    
        Page<User> page = new Page<>(2,3);
        userMapper.selectPageVo(page,22);
        System.out.println(page.getRecords());
        System.out.println(page.getPages());
        System.out.println(page.getTotal());
        System.out.println(page.hasNext());
        System.out.println(page.hasPrevious());

    }

2.4、测试结果

在这里插入图片描述

2.5、数据库中表数据

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43304253/article/details/126823785