MyBatis使用pagehelper进行分页
使用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); //设置第几条记录开始,多少条记录为一页 //通过userService获取user的信息,其sql语句为"select * from user" 但因pagehelp已经注册为插件,所以pagehelp会在原sql语句上增加limit,从而实现分页 List<Person> persons=userService.getAllUsersBypageHelper(); //因而获得的是分好页的结果集 PageInfo<?> pageHelper=page.toPageInfo(); //获取页面信息的对象,里面封装了许多页面的信息 如:总条数,当前页码,需显示的导航页等等 request.setAttribute("persons",persons); request.setAttribute("pagehelper",pageHelper); request.getRequestDispatcher("/persons.jsp").forward(request,response); }
相关推荐
xiuyangsong 2020-06-03
smalllove 2020-05-09
javamagicsun 2020-03-05
zhiyuan0 2020-02-20
无情的你无情的雨 2020-02-18
kevincheung 2020-02-15
dongxurr 2020-01-29
flydoging 2020-01-23
javamagicsun 2019-12-07
韩学敏 2019-11-09
XCMercy 2019-10-29
javamagicsun 2019-09-21
javamagicsun 2019-07-01
shushan 2015-11-28
kevincheung 2015-04-07
jackuseradmin 2019-06-28
javamagicsun 2019-06-27
zhiyuan0 2019-06-04
jackuseradmin 2019-01-11