美文网首页
十二、MyBatis实现分页功能

十二、MyBatis实现分页功能

作者: lifeline张 | 来源:发表于2018-08-27 10:43 被阅读0次

    一、本课目标

    • 掌握MyBatis分页实现

    二、MyBatis分页功能实现

    需求说明:

    • 为用户管理之查询用户列表功能增加分页实现
    • 列表结果按照创建时间降序排列

    分析:

    • 分页-DAO层实现:limit(起始位置,页面容量)
    • 查询用户列表的方法增加两个参数(from,pageSize)

    xml配置文件:

    <!-- 查询用户列表 -->
        <select id="getUserList" resultMap="userList">
            select 
                u.*
            from 
                smbms_user u, smbms_role r
            where 
                u.userRole = r.id
            <if test="userName != null and userName != ''">
                and userName like CONCAT('%',#{userName},'%')
            </if>
            <if test="userRole != null">
                and userRole=#{userRole}
            </if>
            order by
                creationDate DESC
            limit
                #{from}, #{pageSize}
        </select>
    

    接口方法:

    public List<User> getUserList(
                @Param("userName")String userName,
                @Param("userRole")Integer roleId,
                @Param("from")Integer currentPageNo,
                @Param("pageSize")Integer pageSize
                );
    

    测试代码:

    @Test
        public void testGetUserList() {
            List<User> userList = null;
            SqlSession sqlSession = null;
            try {
                sqlSession = MyBatisUtil.createSqlSession();
            // 4、调用mapper文件来对数据进行操作,操作之前必须将mapper文件引入到mabatis-config.xml中
            //  userList = sqlSession.selectList("mmp.UserMapper.getUserList");
                userList = sqlSession.getMapper(UserMapper.class).getUserList("", null,0,5);
                
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                MyBatisUtil.closeSqlSession(sqlSession);
            }
            for (User user:userList) {
                logger.debug("testGetUserList userCode:" + user.getUserCode()
                        + "and userName" + user.getUserName() );
            }
        }
    

    运行结果:


    image.png

    相关文章

      网友评论

          本文标题:十二、MyBatis实现分页功能

          本文链接:https://www.haomeiwen.com/subject/xzrziftx.html