最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Mybatis实现分页的注意点
时间:2022-06-29 01:26:12 编辑:袖梨 来源:一聚教程网
前面的话:使用拦截器给Mybatis进行分页的教程在网上有很多,这里记录的主要是我在使用的时候中间走的弯路,记录下来,也好给后面想要学习Mybatis分页拦截的小伙伴们提供点帮助。
1. 拦截器获取参数,判断是否有Page类
1) 使用ThreadLocal 获取
代码如下 | 复制代码 |
//获取ThreadLocal privatestaticThreadLocal privatePage getPage() { returnpageLocal.get(); } |
2) 从boundsql里面获取
代码如下 | 复制代码 |
BoundSql boundSql = delegate.getBoundSql(); Object parameterObject = boundSql.getParameterObject(); Page page =this.getPage(parameterObject); privatePage getPage(Object parameterObject) { Page page =null; if(parameterObjectinstanceofPage) { page = (Page) parameterObject; }elseif(parameterObjectinstanceofMap) { for(Object val : ((Map) parameterObject).values()) { if(valinstanceofPage) { page = (Page) val; } } } returnpage; } |
2. 重载plugin方法
代码如下 | 复制代码 |
@Override publicObject plugin(Object target) { if(targetinstanceofStatementHandler) { returnPlugin.wrap(target,this); }else{ returntarget; } } |
原文链接:http://blog.csdn.net/cubic__/article/details/75353932
相关文章
- 燕云十六声玉门关阿依苏见闻位置介绍 07-02
- 世界币排行榜前二十名有哪些?全球数字货币排行榜前二十榜单 07-02
- 品源链(PSBT币)在那个交易平台买? 07-02
- 2025年7月Shiba Inu(SHIB)价格预测 07-02
- 魔兽世界11.1.5夜幕激斗场景战役玩法介绍 07-02
- 光与影33号远征队前期快速升级攻略 07-02