ibatis java分页sql语句怎么写

 我来答
cax580230
2012-07-26
知道答主
回答量:30
采纳率:0%
帮助的人:7.3万
展开全部
so easy 你在IDAO中创建一个方法带两个参数,public List<泛型> XXX(int page ,int max
Page);
DAO中实现XXX方法
this.getAqlMapClientTemplate.........queryForList("不介绍了",page
-1*maxPage,maxPage)
还有必须要有一个得到所有行数的方法,在IBATIS中写出,之后Action定义一个if的方法
int countRow == 得到的所有行
List list = 分页的方法
int countPage == 0
if(countRow%10==0) {
countPage = countRow/10
}else {
countPage = countRow/10+1
}
之后就是传到页面了
知道代码没用,主要要知道为什么这么写,第一 分页我们必须知道有多少个消息就是count,还要根据每页多少行数据来进行分页,很详细了 给最佳吧,还不懂就找我
sunjinfu1987
2015-12-17 · TA获得超过3151个赞
知道大有可为答主
回答量:1218
采纳率:72%
帮助的人:407万
展开全部

1、首先定义一个拦截器,拦截sql,进行自动分页sql拼写。

2、通过页码page以及每页记录大小pageSize计算出当前查询的记录起始序号index

3、将index,pageSize构造RowBounds对象rowBounds

4、将rowBounds作为第一个参数传递给mapper的方法,记得一定是放在第一个参数。

5、在mapper中定义好对应的方法与mapper.xml中的sql中的id一致即可。

示例:

RowBounds rowBounds = null;
 int currentPage = param.getCurrentPage();
rowBounds = new RowBounds((currentPage - 1) * pageSize);
List<Student> list = studentMapper.selectByExample(rowBounds, example);
Mapper中方法:
List<Student> selectByExample(RowBounds rowBounds, StudentExample example);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-07-26
展开全部
<select id="aa" resultMap="aaLogMap"
parameterClass="aaa">
select * from tablename where user=#user:String# order by date limit
#start:Integer#,#end:Integer#
</select>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式