婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Mybatis分頁插件的實例詳解

Mybatis分頁插件的實例詳解

熱門標簽:簡單的智能語音電銷機器人 南昌呼叫中心外呼系統哪家好 怎么申請400熱線電話 河北便宜電銷機器人軟件 ai電話電話機器人 泗洪正規電話機器人找哪家 小程序智能電話機器人 怎么去開發一個電銷機器人 湖南保險智能外呼系統產品介紹

Mybatis分頁插件的實例詳解

1.前言:

我們知道,在MySQL中,分頁的sql是使用limit來做,如果我們自己寫sql,那分頁肯定是沒有任何問題的。但是一旦model多了起來,復雜了起來,我們很自然的想到使用mybatis的逆向工程來生成相應的po和mapper,但是同時也會帶來弊端,比如這里的分頁問題就不好解決了。

  可能有人會說,我可以修改生成的文件,沒錯,這是可行的,但是一般我們通過逆向工程生成的文件,都不會去動它,所以這個時候,就需要使用分頁插件來解決了。

如果你也在用Mybatis,建議嘗試該分頁插件,這個一定是最方便使用的分頁插件。

該插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六種數據庫分頁。

 2.使用方法

第一步:在Mybatis配置xml中配置攔截器插件:

plugins>
 !-- com.github.pagehelper為PageHelper類所在包名 -->
 plugin interceptor="com.github.pagehelper.PageHelper">
  !-- 設置數據庫類型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六種數據庫-->  
  property name="dialect" value="mysql"/>
 /plugin>
/plugins>

第二步:在代碼中使用

1、設置分頁信息:

//獲取第1頁,10條內容,默認查詢總數count
PageHelper.startPage(1, 10);
 //緊跟著的第一個select方法會被分頁
ListCountry> list = countryMapper.selectIf(1);

2、取分頁信息

//分頁后,實際返回的結果list類型是PageE>,如果想取出分頁信息,需要強制轉換為PageE>,
PageCountry> listCountry = (PageCountry>)list;
listCountry.getTotal();

3、取分頁信息的第二種方法

//獲取第1頁,10條內容,默認查詢總數count
PageHelper.startPage(1, 10);
ListCountry> list = countryMapper.selectAll();
//用PageInfo對結果進行包裝
PageInfo page = new PageInfo(list);
//測試PageInfo全部屬性
//PageInfo包含了非常全面的分頁屬性
assertEquals(1, page.getPageNum());
assertEquals(10, page.getPageSize());
assertEquals(1, page.getStartRow());
assertEquals(10, page.getEndRow());
assertEquals(183, page.getTotal());
assertEquals(19, page.getPages());
assertEquals(1, page.getFirstPage());
assertEquals(8, page.getLastPage());
assertEquals(true, page.isFirstPage());
assertEquals(false, page.isLastPage());
assertEquals(false, page.isHasPreviousPage());
assertEquals(true, page.isHasNextPage());

 3.TestPageHelper

@Test
public void testPageHelper() {
 //創建一個spring容器
 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext-*.xml");
 //從spring容器中獲得Mapper的代理對象
 TbItemMapper mapper = applicationContext.getBean(TbItemMapper.class);
 //執行查詢,并分頁
 TbItemExample example = new TbItemExample();
 //分頁處理
 PageHelper.startPage(2, 10);
 ListTbItem> list = mapper.selectByExample(example);
 //取商品列表
 for (TbItem tbItem : list) {
  System.out.println(tbItem.getTitle());
 }
 //取分頁信息
 PageInfoTbItem> pageInfo = new PageInfo>(list);
 long total = pageInfo.getTotal();
 System.out.println("共有商品:"+ total);
}



感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • mybatis分頁插件pageHelper詳解及簡單實例
  • Spring mvc整合mybatis(crud+分頁插件)操作mysql
  • spring boot和mybatis集成分頁插件
  • Mybatis分頁插件PageHelper的使用詳解
  • 自己動手寫的mybatis分頁插件(極其簡單好用)
  • Mybatis常用分頁插件實現快速分頁處理技巧
  • Mybatis全面分頁插件
  • Java簡單實現SpringMVC+MyBatis分頁插件

標簽:荊門 江蘇 瀘州 淮安 柳州 威海 那曲 景德鎮

巨人網絡通訊聲明:本文標題《Mybatis分頁插件的實例詳解》,本文關鍵詞  Mybatis,分頁,插件,的,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mybatis分頁插件的實例詳解》相關的同類信息!
  • 本頁收集關于Mybatis分頁插件的實例詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 扎赉特旗| 南靖县| 顺昌县| 厦门市| 沾化县| 吴桥县| 罗城| 雷波县| 囊谦县| 普安县| 屯昌县| 共和县| 乌兰察布市| 晋江市| 大理市| 额尔古纳市| 呼和浩特市| 宜宾县| 莱阳市| 建宁县| 吉安市| 开平市| 遵义市| 明水县| 绥中县| 上犹县| 社会| 大连市| 威远县| 林芝县| 柘城县| 苍山县| 晋宁县| 四平市| 岳阳市| 襄汾县| 北辰区| 壶关县| 石家庄市| 丹江口市| 大宁县|