MyBatis 本身并不支持自动生成分页 SQL 语句。但是,你可以通过插件或者手动编写分页 SQL 来实现分页功能。
有一个流行的 MyBatis 分页插件叫做 PageHelper,它可以帮助你在 MyBatis 中轻松实现分页功能。PageHelper 会自动为你的查询添加分页参数,你只需要配置好插件和相关参数,就可以使用了。
使用 PageHelper 的步骤如下:
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
...
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<property name="helperDialect" value="mysql"/>
<property name="reasonable" value="true"/>
<property name="supportMethodsArguments" value="true"/>
<property name="params" value="count=countSql"/>
</plugin>
</plugins>
...
</configuration>
// 设置分页参数
PageHelper.startPage(pageNum, pageSize);
// 调用 MyBatis 的查询方法
List<User> users = userMapper.selectUsers();
// 获取分页信息
PageInfo<User> pageInfo = new PageInfo<>(users);
这样,你就可以使用 PageHelper 实现 MyBatis 的分页功能了。当然,你也可以手动编写分页 SQL 语句,但这样做会比较繁琐,而且容易出错。使用 PageHelper 插件是一种更简单、更高效的方法。