SpringBoot+Mybatis-Plus兩種分頁方法


用到的依賴:

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatisplus.version}</version>
<exclusions>
<exclusion>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
</exclusion>
</exclusions>
</dependency>

 

首先配置mybatis-plus配置

package com.qfclo.login.config; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import com.baomidou.mybatisplus.extension.plugins.PerformanceInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.util.Properties; @Configuration @MapperScan("com.qfclo.login.mapper") public class MybatisPlusConfig { /** * 分頁插件 */ @Bean public PaginationInterceptorpaginationInterceptor() { return new PaginationInterceptor(); } /** * 打印 sql */ @Bean public PerformanceInterceptorperformanceInterceptor() { PerformanceInterceptor performanceInterceptor =new PerformanceInterceptor(); //格式化sql語句 Properties properties =new Properties(); properties.setProperty("format", "faalse"); performanceInterceptor.setProperties(properties); return performanceInterceptor; } } 

第一種方式,mybatis-plus原生QueryWrapper方式分頁,這種方式比較簡單,可以不用修改Mapper,適合簡單的增刪改查。

    @RequestMapping(value = "/orgist1")//,method = RequestMethod.POST) public Map<String,Object> orglist1() { Map<String,Object> map = new HashMap<>(); QueryWrapper<OauthOrganization> queryWrapper = new QueryWrapper<>(); queryWrapper.orderByDesc("id"); Page<OauthOrganization> page = new Page<>(1,5); // 查詢第1頁,每頁返回5條 IPage<OauthOrganization> iPage = oauthOrganizationMapper.selectPage(page,queryWrapper); System.out.println(iPage.getRecords().size()); System.out.println(JSON.toJSONString(iPage)); return map; } 

第二種方式,使用mapper文件的select注解,優點是可以方便的建立查詢語句,可以聯合多表查詢。
Mapper文件

    @Select("SELECT * FROM oauth_organization WHERE id < #{m.id} ORDER BY `id` DESC") List<OauthOrganization> selectpage(Map<String,Object> m, Page<OauthOrganization> page); 

Controller文件

    @RequestMapping(value = "/orgist4")//,method = RequestMethod.POST) public Map<String,Object> orglist4() { Map<String,Object> map = new HashMap<>(); Map<String,Object> m = new HashMap<>(); m.put("id",5); Page<OauthOrganization> page = new Page<>(1,5); page.setRecords(oauthOrganizationMapper.selectpage(m,page)); System.out.println(page.getRecords().size()); System.out.println(JSON.toJSONString(page)); return map; }



作者:小魚兒2020
鏈接:https://www.jianshu.com/p/0a21569f1e06
來源:簡書


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM