• 通过 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中配置第三方插件。

  • 相关阅读:
    Windows如何安装苹果系统
    python生成.h和.m文件
    python脚本为已创建的ios .h和.m文件添加费代码
    (转)xcode报错:Undefined symbols for architecture x86_64
    (转)iOS内购(iap)总结
    (转)iOS的静态库和动态库(.a、.framework)、Undefined symbols for architecture x86_64、Invalid bitcode signature错误的...
    (转)iOS开发之内购-AppStore
    (转)Cocos 2d-X Lua 游戏添加苹果内购(二) OC和Lua交互代码详解
    关于git服务器的搭建
    关于计算机(概念漫谈)
  • 原文地址:https://www.cnblogs.com/aloneme/p/14321428.html
Copyright © 2020-2023  润新知