如何为mysql(限制/偏移)制作最新的MyBatis Dynamic SQL支持分页?

时间:2018-05-24 05:38:29

标签: java mybatis mybatis-generator

http://www.mybatis.org/mybatis-dynamic-sql/docs/select.html上有一些样本。

我想为mysql实现限制/偏移但是没有看到任何描述如何扩展此库以支持其他where条件的文档。

这是我想要实现的目标:

SelectStatementProvider selectStatement = select(id, animalName, bodyWeight, brainWeight)
        .from(animalData)
        .where(id, isIn(1, 5, 7))
        .and(bodyWeight, isBetween(1.0).and(3.0))
        .orderBy(id.descending(), bodyWeight)
        .limit(1).offset(10)
        .build()
        .render(RenderingStrategy.MYBATIS3);

1 个答案:

答案 0 :(得分:0)

您可以使用几种资源。

此页面 - http://www.mybatis.org/mybatis-dynamic-sql/docs/whereClauses.html - 显示了使用standalone where子句构建分页查询的示例。这不是你想要的,但它显示了一种方法。

有一个单元测试显示的内容更接近您在这里寻找的内容 - https://github.com/mybatis/mybatis-dynamic-sql/tree/master/src/test/java/examples/paging。此代码适用于MySQL,您可以按原样使用它。

我希望在将来的版本中让它更容易一些。