MybatisPlus入門(四)MybatisPlus分頁

努力--坚持發表於2024-11-24

一、Lombok的使用
Lombok外掛介紹:Lombok是一個 jar包帶了若干註解,能幫助我們快速開發實體類。

Lombok使用:
步驟一:引入依賴

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.X.X</version>
        </dependency>

步驟二:新增註釋:
@Setter
@Getter
@ToString
@AllArgsContructor
@NoArgsContructor
@Contructor
@EqualsAndHashCode
@Data


實體類示例程式碼如下:

package com.it.domain;
 
import lombok.*;
/*
    1 生成getter和setter方法:@Getter、@Setter
      生成toString方法:@ToString
      生成equals和hashcode方法:@EqualsAndHashCode
    2 統一成以上所有:@Data
    3 生成空參構造: @NoArgsConstructor
      生成全參構造: @AllArgsConstructor
    4 lombok還給我們提供了builder的方式建立物件,好處就是可以鏈式程式設計。 @Builder
 */
@Data
public class User {
    private Long id;
    private String name;
    private String password;
    private Integer age;
    private String tel;
}

二、Mybatis-Plus分頁
分頁:IPage<T> selectPage(IPage<T> page)

步驟一:
設定分頁攔截器作為Spring管理的bean,新增配置類:

package com.it.config;
 
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
 
@Configuration
public class MpConfig {
    @Bean
    public MybatisPlusInterceptor mpInterceptor(){
        //1.定義Mp攔截器
        MybatisPlusInterceptor mpInterceptor = new MybatisPlusInterceptor();
        //2.新增具體的攔截器
        mpInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return mpInterceptor;
    }
}

步驟二:執行分頁查詢

package com.it;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.itheima.dao.UserDao;
import com.itheima.domain.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
 
import java.util.List;
 
@SpringBootTest
class Mybatisplus01QuickstartApplicationTests {
 
    @Autowired
    private UserDao userDao;
 
 
    /**
     * 分頁查詢Test
     */
    @Test
    void testGetByPage(){
        //IPage物件封裝了分頁操作相關的資料
        IPage page  = new Page(2,3);//(當前頁,每頁顯示數量)
        userDao.selectPage(page,null);
        System.out.println("當前頁碼值:"+page.getCurrent());//當前頁碼值
        System.out.println("每頁顯示數:"+page.getSize());//每頁顯示數
        System.out.println("一共多少頁:"+page.getPages());//一共多少頁
        System.out.println("一共多少條資料:"+page.getTotal());//一共多少條資料
        System.out.println("資料:"+page.getRecords());//資料
    }
 
}

三、開啟MybatisPlus的日誌
檢視執行日誌配置:開啟MybatisPlus的日誌可以,除錯程式,查詢sql
# 開啟MybatisPlus的日誌(輸出到控制檯)在application.xml配置:如下

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

相關文章