欢迎来到天天文库
浏览记录
ID:34724506
大小:248.73 KB
页数:10页
时间:2019-03-10
《mybatis实战教程之七:实现mybatis分页》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、mybatis实战教程(mybatisinaction)之七:实现mybatis分页(源码下载)上一篇文章里已经讲到了mybatis与springMVC的集成,并且做了一个列表展示,显示出所有article列表,但没有用到分页,在实际的项目中,分页是肯定需要的。而且是物理分页,不是内存分页。对于物理分页方案,不同的数据库,有不同的实现方法,对于mysql来说就是利用limitoffset,pagesize方式来实现的。oracle是通过rownum来实现的,如果你熟悉相关数据库的操作,是一样的很好扩
2、展,本文以mysql为例子来讲述.先看一下效果图(源代码在文章最后提供下载):实现mybatis物理分页,一个最简单的方式是,是在你的mapper的SQL语句中直接写类似如下方式: 程序代码 selectuser.id,user.userName,user.userAddress,article.idaid,arti
3、cle.title,article.contentfromuser,article whereuser.id=article.useridanduser.id=#{id}limit#{offset},#{pagesize} 请注意这里的parameterType是你传入的参数类,或者map,里面包含了offset,pagesize,和其他你需要的参数,用这种方式,肯定可以实现分页。这是简单的一种方式。但更通用的一种方式是用mybatis插件的方式.参考了
4、网上的很多资料,mybatisplugin方面的资料。写自己的插件. 程序代码packagecom.yihaomen.util;importjava.lang.reflect.Field;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.List;importjava.util.Map;impor
5、tjava.util.Properties;importjavax.xml.bind.PropertyException;importorg.apache.ibatis.builder.xml.dynamic.ForEachSqlNode;importorg.apache.ibatis.executor.ErrorContext;importorg.apache.ibatis.executor.Executor;importorg.apache.ibatis.executor.ExecutorExc
6、eption;importorg.apache.ibatis.executor.statement.BaseStatementHandler;importorg.apache.ibatis.executor.statement.RoutingStatementHandler;importorg.apache.ibatis.executor.statement.StatementHandler;importorg.apache.ibatis.mapping.BoundSql;importorg.apa
7、che.ibatis.mapping.MappedStatement;importorg.apache.ibatis.mapping.ParameterMapping;importorg.apache.ibatis.mapping.ParameterMode;importorg.apache.ibatis.plugin.Interceptor;importorg.apache.ibatis.plugin.Intercepts;importorg.apache.ibatis.plugin.Invoca
8、tion;importorg.apache.ibatis.plugin.Plugin;importorg.apache.ibatis.plugin.Signature;importorg.apache.ibatis.reflection.MetaObject;importorg.apache.ibatis.reflection.property.PropertyTokenizer;importorg.apache.ibatis.session.Configuratio
此文档下载收益归作者所有