标签:mybatis 分页 pagehelper pageinfo
<
plugins
>
<!-- com.github.pagehelper为PageHelper类所在包名 -->
<
plugin
interceptor
=
"com.github.pagehelper.PageHelper"
>
<
property
name
=
"dialect"
value
=
"mysql"
/>
<!-- 该参数默认为false -->
<!-- 设置为true时,会将RowBounds第一个参数offset当成pageNum页码使用 -->
<!-- 和startPage中的pageNum效果一样-->
<
property
name
=
"offsetAsPageNum"
value
=
"true"
/>
<!-- 该参数默认为false -->
<!-- 设置为true时,使用RowBounds分页会进行count查询 -->
<
property
name
=
"rowBoundsWithCount"
value
=
"true"
/>
</
plugin
>
</
plugins
>
这几段插件配置的代码,应该放到Mybatis的config配置文件中,而非Maven。
后来,听Leader说,他在这也被误导了,搞了一天时间吧。
2.
http://www.oschina.net/p/mybatis_pagehelperpublic
void
testPageHelperByStartPage()
throws
Exception {
String logip =
""
;
String username =
"super"
;
String loginDate =
""
;
String exitDate =
null
;
String logerr =
null
;
//不进行count查询,第三个参数设为false
PageHelper.startPage(
1
,
10
,
false
);
//返回结果是Page<SysLoginLog>
//该对象除了包含返回结果外,还包含了分页信息,可以直接按List使用
List<SysLoginLog> logs = sysLoginLogMapper
.findSysLoginLog(logip, username, loginDate, exitDate, logerr);
Assert.assertEquals(
10
, logs.size());
//当第三个参数没有或者为true的时候,进行count查询
PageHelper.startPage(
2
,
10
);
//返回结果是Page<SysLoginLog>
//该对象除了包含返回结果外,还包含了分页信息,可以直接按List使用
Page<SysLoginLog> page = (Page<SysLoginLog>) sysLoginLogMapper
.findSysLoginLog(logip, username, loginDate, exitDate, logerr);
Assert.assertEquals(
10
, page.getResult().size());
//进行count查询,返回结果total>0
Assert.assertTrue(page.getTotal() >
0
);
PageHelper.startPage(
1
,
10
);
List<Country> list = countryMapper.selectAll();
PageInfo page =
new
PageInfo(list);
assertEquals(
10
, list.size());
assertEquals(
239
, page.getTotal());
3.我的实际代码和效果
Mybatis分页插件PageHelper正确的使用方法(网上有2篇不够科学的文章)
标签:mybatis 分页 pagehelper pageinfo
原文地址:http://blog.csdn.net/fansunion/article/details/40304187