MyBatis基于pagehelper實現(xiàn)分頁原理及代碼實例
使用pagehelper分頁的原理是:
通過MyBatis的插件原理(類似web里的filter攔截器),在mapper配置文件將pagehelper注冊為MyBatis的插件,從而進行分頁
1.通過maven引入pagehelper依賴:
<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.11</version> </dependency>
2.在MyBatis的mapper配置文件將pagehelper注冊為MyBatis的插件
<plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin> </plugins>
3.pagehelper的用法:
private void selectAllUsers(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String num=request.getParameter("num"); if(null==num) { num="1"; } // Page PageInfo Page<?> page=PageHelper.startPage(Integer.parseInt(num),5); //設(shè)置第幾條記錄開始,多少條記錄為一頁 //通過userService獲取user的信息,其sql語句為"select * from user" 但因pagehelp已經(jīng)注冊為插件,所以pagehelp會在原sql語句上增加limit,從而實現(xiàn)分頁 List<Person> persons=userService.getAllUsersBypageHelper(); //因而獲得的是分好頁的結(jié)果集 PageInfo<?> pageHelper=page.toPageInfo(); //獲取頁面信息的對象,里面封裝了許多頁面的信息 如:總條數(shù),當前頁碼,需顯示的導航頁等等 request.setAttribute("persons",persons); request.setAttribute("pagehelper",pageHelper); request.getRequestDispatcher("/persons.jsp").forward(request,response); }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java.lang.Instrument 代理Agent使用詳細介紹
這篇文章主要介紹了java.lang.Instrument 代理Agent使用詳細介紹的相關(guān)資料,附有實例代碼,幫助大家學習參考,需要的朋友可以參考下2016-11-11Java實現(xiàn)跳躍表(skiplist)的簡單實例
這篇文章主要介紹了Java編程中跳躍表的概念和實現(xiàn)原理,并簡要敘述了它的結(jié)構(gòu),具有一定參考價值,需要的朋友可以了解下。2017-09-09使用SpringBoot配置多數(shù)據(jù)源的經(jīng)驗分享
這篇文章主要介紹了使用SpringBoot配置多數(shù)據(jù)源的經(jīng)驗分享,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04Spring依賴注入方式(Dependency Injection)
在實際開發(fā)中,推薦使用構(gòu)造器注入而非字段注入,原因包括官方推薦、代碼簡潔、安全性高和易于測試,構(gòu)造器注入通過在對象創(chuàng)建時注入所有必需的依賴,避免運行時忘記注入的問題,且利用Lombok的@RequiredArgsConstructor可自動生成構(gòu)造函數(shù)2024-10-10Java中Map與JSON數(shù)據(jù)之間的互相轉(zhuǎn)化
我們在開發(fā)中難免和JSON打交道,這不小編最近遇到了,需要把一些信息轉(zhuǎn)成JSON字符串,下面這篇文章主要給大家介紹了關(guān)于Java中Map與JSON數(shù)據(jù)之間的互相轉(zhuǎn)化,需要的朋友可以參考下2023-04-04