您现在的位置是:主页 > news > 台州网络建站模板/seoul是什么品牌
台州网络建站模板/seoul是什么品牌
admin2025/5/22 9:59:11【news】
简介台州网络建站模板,seoul是什么品牌,网站301的作用,律师个人网站建设一、 MyBatis 分页方式 分页方式:逻辑分页和物理分页。 逻辑分页: 使用 MyBatis 自带的 RowBounds 进行分页,它是一次性查询很多数据,然后在数据中再进行检索。 物理分页: 自己手写 SQL 分页或使用分页插件 PageHelper…
一、 MyBatis 分页方式
分页方式:逻辑分页和物理分页。
逻辑分页: 使用 MyBatis 自带的 RowBounds 进行分页,它是一次性查询很多数据,然后在数据中再进行检索。
物理分页: 自己手写 SQL 分页或使用分页插件 PageHelper,去数据库查询指定条数的分页数据的形式。
二、MyBatis 逻辑分页和物理分页的区别
逻辑分页是一次性查询很多数据,然后再在结果中检索分页的数据。这样做弊端是需要消耗大量的内存、有内存溢出的风险、对数据库压力较大。
物理分页是从数据库查询指定条数的数据,弥补了一次性全部查出的所有数据的种种缺点,比如需要大量的内存,对数据库查询压力较大等问题。
三、RowBounds
RowBounds 表面是在“所有”数据中检索数据,其实并非是一次性查询出所有数据,因为 MyBatis 是对 jdbc 的封装,在 jdbc 驱动中有一个 Fetch Size 的配置,它规定了每次最多从数据库查询多少条数据,假如你要查询更多数据,它会在你执行 next()的时候,去查询更多的数据。就好比你去自动取款机取 10000 元,但取款机每次最多能取 2500 元,所以你要取 4 次才能把钱取完。只是对于 jdbc 来说,当你调用 next()的时候会自动帮你完成查询工作。这样做的好处可以有效的防止内存溢出。
Fetch Size 官方相关文档
- Mybatis实现分页的三种方式
- Mybatis实现分页的几种方式
- Mybatis的四种分页方式详解