当前位置:   article > 正文

分页查询(pageHelper插件)_分页查询插件

分页查询插件

分页查询(pageHelper插件)

快速入门

一、在 pom.xml 中添加如下依赖:

<!-- 添加分布插件的包pagehelper -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>5.1.8</version>
        </dependency>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

二、 在 Spring 配置文件中配置拦截器插件,使用plugins属性进行配置

<!--配置sqlsession factory-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <!--加载mybatis的核心文件-->
        <property name="configLocation" value="classpath:sqlMapConfig-spring.xml"></property>
        <!--融合mybatis  不需要mapper的映射文件-->
        <property name="mapperLocations" value="classpath:com.demo.entity/*Mapper.xml"></property>
        <!--分页插件-->
        <property name="plugins">
            <array>
                <bean class="com.github.pagehelper.PageInterceptor">
                    <property name="properties">
                        <!--使用下面的方式配置参数,一行配置一个 -->
                        <value>
                            offsetAsPageNum=true
                            rowBoundsWithCount=true
                            pageSizeZero=true
                            reasonable=true
                        </value>
                    </property>
                </bean>
            </array>
        </property>

    </bean>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

三、Dao层实现的方法(其实就是这个插件就是对查询全部的增强sql写查询全部的就可以)

<select id="selectpage" resultType="users" parameterType="Integer">
        select * from users
</select>
  • 1
  • 2
  • 3

四、controller层

 @RequestMapping("/selectallpage2")
    public String selectallpage2(users users, Model model,
                                 @RequestParam(defaultValue = "1") Integer pageNum,
                                 @RequestParam(defaultValue = "10") Integer pageSize){
        PageHelper.startPage(2,10);//startPage是告诉拦截器说我要开始分页了。分页参数是这两个。
        List<users> page = us.selectpage(users, pageNum, pageSize);
        PageInfo<users> pageInfo = new PageInfo<>(page);//对普通的page查询到的进行增强
        model.addAttribute("pageInfo",pageInfo);
        for (users users1 : pageInfo.getList()) {
            System.out.println(users1.getId()+"===="+users1.getUname());
        }
        System.out.println("总行数="+pageInfo.getTotal());
        System.out.println("当前页="+pageInfo.getPageNum());
        System.out.println("每页行数="+pageInfo.getPageSize());
        System.out.println("总页数="+pageInfo.getPages());
        System.out.println("起始行数="+pageInfo.getStartRow());

        System.out.println("是第一页="+pageInfo.isIsFirstPage());
        System.out.println("是最后一页="+pageInfo.isIsLastPage());

        System.out.println("还有下一页="+pageInfo.isHasNextPage());
        System.out.println("还有上一页="+pageInfo.isHasPreviousPage());

        System.out.println("页码列表="+ Arrays.toString(pageInfo.getNavigatepageNums()));


        return "select";
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

五、jsp页面(注意:list.之后不会有提示了 不是写的有问题)

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title></title>
</head>
<body>
<h1>查询全部</h1>
<table>
    <thead>
    <tr>
        <td>编号</td>
        <td>姓名</td>
        <td>密码</td>
    </tr>
    </thead>

    <c:forEach var="list" items="${pageInfo.list}"
        <tbody>
        <tr>
            <td>${list.id}</td>
            <td>${list.uname}</td>
            <td>${list.pwd}</td>
        </tr>
        </tbody>
    </c:forEach>

</table>
</body>
</html>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

image-20211111230041437

image-20211111230249362

image-20211111230354096

image-20211111230427197

image-20211111231425168

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/88010
推荐阅读
相关标签
  

闽ICP备14008679号