mybatis带上总数量的分页查询

mybatis带上总数量的分页查询

假设数据库我用limit去查询,但是想要获取实体类和表中的总数量时,可以用到此方法
直接上代码举例

Mapper层

/**
* list.get(0)是具体数据(这个数据也可以是一个List)
* list.get(1)是表中的总数量
*/
List<Object> selectUserByUserId(Integer userId);

xml层

	<!--  总数量  -->
	<resultMap type="java.lang.Integer" id="count">
        <result column="count"/>
    </resultMap>
    <!--  实体类映射  -->
    <resultMap type="com.cure.cure.entity.User" id="user">
        <id column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="password" property="password"/>
    </resultMap>
    <!--  实体类需要映射进resultMap  -->
    <select id="selectUserByUserId" resultMap="user,count" >
        select SQL_CALC_FOUND_ROWS * from cure_user limit 0,1 ;
        SELECT FOUND_ROWS() AS count;
    </select>

测试一下

这里可以自行测试,我用的springboot的test

@SpringBootTest
class CureApplicationTests {
    
    
    @Resource
    private UserMapper userMapper;
    @Test
    void testCount(){
    
    
        List<Object> list=userMapper.selectUserByUserId(1);
        for (Object o : list) {
    
    
            System.out.println(o);
        }
    }
}

测试结果:成功

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Jay_Chou345/article/details/115670011