Springboot+mybatisplus自定义分页SQL

MyBatis-Plus 允许你使用自定义的 SQL 语句来实现分页。可以使用 com.baomidou.mybatisplus.extension.plugins.pagination.Page 对象来实现分页,这个对象需要在 SQL 语句执行之前创建。你需要给这个对象传递当前页数和每页的记录数。

你可以在 Mapper 接口的方法中使用如下代码来创建 Page 对象:

Page page = new Page<>(current, size);

然后你就可以在 Mapper.xml 文件中编写自定义的分页 SQL 语句。你可以使用 ${} 来引用参数,例如:

SELECT * FROM table LIMIT ${(page.current - 1) * page.size}, ${page.size}

最后,你可以在 Mapper 接口的方法中使用 page 参数来执行分页查询,并返回结果。

List<T> selectPage(Page<T> page);

你也可以使用 MyBatis-Plus 的注解 @SqlParser(filter = true) 来支持自定义分页 SQL。

@SqlParser(filter = true)
@Select("SELECT * FROM table LIMIT ${(page.current - 1) * page.size}, ${page.size}")
List selectPage(Page page);

你可能感兴趣的:(spring,boot,sql,mybatis,java,spring)