• 分页--PageHelper的使用


    POM依赖

    <dependency>
          <groupId>com.github.pagehelper</groupId>
          <artifactId>pagehelper</artifactId>
          <version>5.2.0</version>
     </dependency>

    Mybatis配置文件

    <plugins>
            <plugin interceptor="com.github.pagehelper.PageInterceptor">
                <property name="helperDialect" value="mysql"/>
            </plugin>
        </plugins>

    Servlet代码示例

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            String page = request.getParameter("page");
            String size = request.getParameter("size");
            StudentService studentService = new StudentServiceImpl();
            PageHelper.startPage(page == null ? 1:Integer.parseInt(page),size == null ? 4:Integer.parseInt(size));
            List<Student> list = studentService.findAllStudent();
            PageInfo pageInfo = PageInfo.of(list);
            response.getWriter().println(new ObjectMapper().writeValueAsString(pageInfo));
        }

    1、PageHelper的优点是,分页和Mapper.xml完全解耦。实现方式是以插件的形式,对Mybatis执行的流程进行了强化,添加了总数count和limit查询。属于物理分页。

    2、Page page = PageHelper.startPage(pageNum, pageSize, true); - true表示需要统计总数,这样会多进行一次请求select count(0); 省略掉true参数只返回分页数据。

    参考:

    https://www.cnblogs.com/kangoroo/p/7998433.html

  • 相关阅读:
    GUI编程
    网络编程
    线程池详解_3
    多线程详解_2
    注解和反射_1
    多线程详解_1
    javaEE简要总结
    MarkDown使用教程简单介绍
    com.sun.xxx.utils不存在问题的解决
    解决npm install安装慢的问题
  • 原文地址:https://www.cnblogs.com/FivePointOne/p/13879807.html
Copyright © 2020-2023  润新知