zoukankan      html  css  js  c++  java
  • 通过 plugins标签实现分页助手的使用详解

    需求

    对查询的数据进行分页查询。

    分析:MyBatis使用第三方的插件来对功能进行扩展,分页助手PageHelper是将分页的复杂操作进行封装,使用简单的方式即可获得分页的相关数据。

    实现步骤

    1.导入通用PageHelper的坐标

    2.在mybatis核心文件中配置PageHelper插件

    3.编写测试分页代码

    代码详解

    1.导入通用PageHelper的坐标(依赖包)

    <!-- 分页助手 -->
    
    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>3.7.5</version>
    </dependency>
    
    <dependency>
        <groupId>com.github.jsqlparser</groupId>
        <artifactId>jsqlparser</artifactId>
        <version>0.9.1</version>
    </dependency>

    2.在mybatis核心文件中配置PageHelper插件

        <!--分页助手插件:插入配置的位置也十分重要,位置不对会报错-->
        <plugins>
            <plugin interceptor="com.github.pagehelper.PageHelper">
                <!--value :指定方言,MYSQL等数据库的分页语法不同,这里是指定采用哪种数据库的分页语法-->
                <property name="dialect" value="mysql"/>
            </plugin>
        </plugins>

    3.编写测试分页代码

     /**
         * 测试分页插件的使用
         */
        @Test
        public void test7() throws IOException {
            InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
            SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
            SqlSession sqlSession = build.openSession();
    
            InterfaceEmp mapper = sqlSession.getMapper(InterfaceEmp.class);
    
            /*pageNum表示当前数据是第几页,pageSize表示当前也展示的数据条数*/
            PageHelper.startPage(1,2);
            List<Emp> emps = mapper.selectAll();
            for (Emp emp : emps) {
                System.out.println(emp);
            }
    
            /*如下也分页插件的其他相关函数*/
            PageInfo<Emp> pageInfo = new PageInfo<>(emps);
            System.out.println("总条数:" + pageInfo.getTotal());
            System.out.println("总页数:" + pageInfo.getPages());
            System.out.println("当前页:" + pageInfo.getPageNum());
            System.out.println("每页显示长度:" + pageInfo.getPageSize());
            System.out.println("是否第一页:" + pageInfo.isIsFirstPage());
            System.out.println("是否最后一页:" + pageInfo.isIsLastPage());
    
            sqlSession.close();
        }

    知识点详解

    该实现中主要是用到PageHelper标签,该标签的作用是在Mybatis中配置第三方插件。

  • 相关阅读:
    jQuery 控制表单里回车键 自动下一个标签
    Firefox 图片模糊的问题
    An UDF to calculate weekday
    Number of sets of natural numbers less than n which sum to n.
    一元多项式的幂
    jquery tablelist Tablesorter 表格控件
    结构体 vector map嵌套使用
    [置顶] 好的网站
    人,这一辈子
    error C2471: 无法更新程序数据库vc90.pdb
  • 原文地址:https://www.cnblogs.com/aloneme/p/14321428.html
Copyright © 2011-2022 走看看