问题:
在使用mybatis过程中通过mybatis-generator逆向生成实体(包含example)和mapper(包含xml文件)。
对于example的理解,可以认为是一个高级查询的过程,但从执行代码的表面角度看,有点像Hibernate。
如何使用mybatis的example来实现一个有条件筛选的分页?
思路:
先在navicat中写出一个简单的能够实现筛选(条件)和分页的sql语句
mysql中实现比较简单
select * from tableA where A.a>10 limit startRow ,pageSize
在Oracle中语句就相对比较复杂
SELECT
*
FROM
( SELECT t.*, row_number () over ( ORDER BY GUID ) AS num FROM tableA t WHERE MJ >= 10 ) tt
WHERE
num BETWEEN 5
AND 6
简单解释一下这个语句,先从from()开始理解:
首先查询条件筛选过的A.*(全部字段)和row_number()
然后再从其中查询序列号在5到6的结果(ps:也是一个条件查询)
解决:
1在mapper.java中声明方法
List<WfjzTsjb> selectByPage(@Param("start") int
Mybatis Example在Oracle中的分页查询实践

本文探讨了如何使用Mybatis Example配合Oracle数据库进行分页查询。作者首先提出了在逆向生成的实体和mapper中使用Example进行有条件筛选分页的问题,然后分享了在MySQL和Oracle中实现分页SQL的差异,特别是Oracle的复杂性。接着,详细介绍了通过在mapper.java声明方法、mapper.xml编写SQL以及测试方法来实现这一功能的步骤,最终测试成功。
最低0.47元/天 解锁文章
3414

被折叠的 条评论
为什么被折叠?



