随笔 - 33,  文章 - 0,  评论 - 0,  阅读 - 8234

分页

思考:为什么分页?

查数据库时,数据太多,可以减少数据处理量。

使用limit分页

语法:SELECT *from user limit startIndex,pageSize;
#startIndex 在哪个开始
#pageSize 每页显示几个

使用ybatis实现分页,核心SQL

mapper接口

public interface UserMapper {
   List<User> getUserList();
   List<User> getUserByLimit(Map<String,Integer> map);
}

mapper.xml resultMapz做了映射

    <select id="getUserByLimit" parameterType="map" resultMap="getUserMap">
      select * from user limit #{startIndex},#{pageSize};
   </select>

测试类

    @Test
   public void getUserByLimit(){
       SqlSession sqlSession = MybatisUntils.getSqlSession();
       UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

       HashMap<String, Integer> map = new HashMap<>();
       map.put("startIndex",1);
       map.put("pageSize",3);
       List<User> userList = userMapper.getUserByLimit(map);
       for (User user : userList) {
           logger.info(user);
      }

       sqlSession.close();
  }

 

RowBounds类分页 了解

接口

public interface UserMapper {

   /* rowBounds 分页*/
   List<User> getUserByRowBounds();
}

mapper.xml

<mapper namespace="com.zy.dao.UserMapper">
   <resultMap id="getUserMap" type="hello">
       <result column="id" property="id"/>
       <result column="name" property="name"/>
       <result column="psw" property="password"/>
   </resultMap>
 
   <!-- RowBounds分页   -->
   <select id="getUserByRowBounds" resultMap="getUserMap">
      select * from user
   </select>
</mapper>

测试类

    @Test
   public void getUserByRowBounds(){
       //创建rowBounds对象
       RowBounds rowBounds = new RowBounds(1,2);
       //sqlSession 选择查询方法 赋值
       SqlSession sqlSession = MybatisUntils.getSqlSession();
       List<User> list = sqlSession.selectList("com.zy.dao.UserMapper.getUserByRowBounds",null,rowBounds);
       for (User user : list) {
           System.out.println(user);
      }
       sqlSession.close();
  }

分页插件

mybatis Pagehelper 百度

posted on   可惜君已逝i  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!

< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5
点击右上角即可分享
微信分享提示