日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MyBatis-Plus_分页查询

發(fā)布時間:2024/9/27 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MyBatis-Plus_分页查询 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

查詢專欄:myabtis 實現(xiàn)的分頁為什么還要分頁插件?

文章目錄

    • 1. 創(chuàng)建分頁插件
    • 2. 測試分頁
    • 3. 自定義分頁
    • 4. 測試自定義分頁方法
    • 5. 控制臺輸出
    • 6. 多表操作

1. 創(chuàng)建分頁插件

@Configuration public class MybatisPlusConfig {@Beanpublic PaginationInterceptor paginationInterceptor() {return new PaginationInterceptor();} }

2. 測試分頁

/*** myabtis 實現(xiàn)的分頁為什么還要分頁插件?* <p>* 1.mybatis實現(xiàn)得分頁時邏輯分頁或者叫做內存不是物理分頁* 2.他是把符合條件的數(shù)據(jù)全部查詢出來放到內存中,然后返回你需要的那部分* 3.表中數(shù)據(jù)不多時,可以使用,速度慢一些;當數(shù)據(jù)量大時,建議使用物理分頁*/@Testpublic void selectPage() {QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.ge("age", 26);//總頁數(shù)+總記錄數(shù) // Page<User> page = new Page<>(1, 2);// 不返回總記錄數(shù) 設置falsePage<User> page = new Page<>(1, 2, false);//第一種 // IPage<User> iPage = userMapper.selectPage(page, queryWrapper); // System.out.println("總頁數(shù):"+iPage.getPages()); // System.out.println("總記錄數(shù):"+iPage.getTotal());//第二種IPage<Map<String, Object>> iPage = userMapper.selectMapsPage(page, queryWrapper);System.out.println("總頁數(shù):" + iPage.getPages());System.out.println("總記錄數(shù):" + iPage.getTotal());List<Map<String, Object>> userList = iPage.getRecords();userList.forEach(System.out::println);}

3. 自定義分頁

  • 在mapper接口中,添加自定義分頁接口
/*** 查詢所有 有條件會自動拼接在where 后邊當條件 單表操作** @param page* @param wrapper* @return*///自定義sql 分頁IPage<User> selectUserPage(Page<User> page, @Param(Constants.WRAPPER) Wrapper<User> wrapper);
  • 在xml文件中書寫sql
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.example.mybatisplus.sampleschapter1.dao.UserMapper"><select id="selectUserPage" resultType="com.example.mybatisplus.sampleschapter1.entity.User">select * from user ${ew.customSqlSegment}</select></mapper>

4. 測試自定義分頁方法

@Testpublic void selectMyPage() {QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.ge("age", 26);//總頁數(shù)+總記錄數(shù)Page<User> page = new Page<>(1, 2);//調用自定義sqlIPage<User> iPage = userMapper.selectUserPage(page, queryWrapper);System.out.println("總頁數(shù):" + iPage.getPages());System.out.println("總記錄數(shù):" + iPage.getTotal());List<User> userList = iPage.getRecords();userList.forEach(System.out::println);}

5. 控制臺輸出

6. 多表操作

/*** 多表操作* 1.在xml文件中書寫sql語句* 2.在mapper接口中,定義接口* 3.客戶端調用即可*/

想學習更多微服務、分布式、中間件、數(shù)據(jù)庫、項目快速構建等系列技術
請訪問http://gblfy.com
讓我們一起進步!!!

總結

以上是生活随笔為你收集整理的MyBatis-Plus_分页查询的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。