use of com.github.pagehelper.mapper.CountryMapper in project Mybatis-PageHelper by pagehelper.
the class PageRowBoundsTest method testMapperWithPageRowBounds.
/**
* 使用Mapper接口调用时,对接口增加RowBounds参数,不需要修改对应的xml配置(或注解配置)
* <p/>
* RowBounds方式不进行count查询,可以通过修改Page代码实现
* <p/>
* 这种情况下如果同时使用startPage方法,以startPage为准
*/
@Test
public void testMapperWithPageRowBounds() {
SqlSession sqlSession = RowBoundsHelper.getSqlSession();
CountryMapper countryMapper = sqlSession.getMapper(CountryMapper.class);
try {
//获取第1页,10条内容,默认查询总数count
PageRowBounds pageRowBounds = new PageRowBounds(0, 10);
List<Country> list = countryMapper.selectAll(pageRowBounds);
//新增PageInfo对象,对返回结果进行封装
assertEquals(10, list.size());
assertEquals(183L, pageRowBounds.getTotal().longValue());
//判断查询结果的位置是否正确
assertEquals(1, list.get(0).getId());
assertEquals(10, list.get(list.size() - 1).getId());
//获取第10页,10条内容,显式查询总数count
pageRowBounds = new PageRowBounds(90, 10);
list = countryMapper.selectAll(pageRowBounds);
assertEquals(10, list.size());
assertEquals(183L, pageRowBounds.getTotal().longValue());
//判断查询结果的位置是否正确
assertEquals(91, list.get(0).getId());
assertEquals(100, list.get(list.size() - 1).getId());
//获取第3页,20条内容,默认查询总数count
pageRowBounds = new PageRowBounds(100, 20);
list = countryMapper.selectAll(pageRowBounds);
assertEquals(20, list.size());
assertEquals(183L, pageRowBounds.getTotal().longValue());
//判断查询结果的位置是否正确
assertEquals(101, list.get(0).getId());
assertEquals(120, list.get(list.size() - 1).getId());
} finally {
sqlSession.close();
}
}
use of com.github.pagehelper.mapper.CountryMapper in project Mybatis-PageHelper by pagehelper.
the class RowBoundsTest method testWithRowboundsAndCountTrue.
/**
* 使用Mapper接口调用时,使用PageHelper.startPage效果更好,不需要添加Mapper接口参数
*/
@Test
public void testWithRowboundsAndCountTrue() {
SqlSession sqlSession = RowBoundsHelper.getSqlSession();
CountryMapper countryMapper = sqlSession.getMapper(CountryMapper.class);
try {
//limit=0,这时候相当于用分页插件求count,但是前提必须是配置rounbounds方式求count,否则都是-1
//这里由于没有配置,应该都是-1
List<Country> list = countryMapper.selectAll(new RowBounds(0, -1));
assertEquals(183, list.size());
//pageSize<0的时候同上
list = countryMapper.selectAll(new RowBounds(0, -100));
assertEquals(183, list.size());
} finally {
sqlSession.close();
}
}
use of com.github.pagehelper.mapper.CountryMapper in project Mybatis-PageHelper by pagehelper.
the class ArgumentsMapTest method testArgumentsMap.
/**
* 使用Mapper接口调用时,使用PageHelper.startPage效果更好,不需要添加Mapper接口参数
*/
@Test
public void testArgumentsMap() {
SqlSession sqlSession = MybatisHelper.getSqlSession();
CountryMapper countryMapper = sqlSession.getMapper(CountryMapper.class);
try {
List<Country> list = countryMapper.selectByPageNumSizeOrderBy(1, 10, "id desc");
assertEquals(10, list.size());
assertEquals(183, ((Page<?>) list).getTotal());
list = countryMapper.selectByPageNumSize(2, 10);
assertEquals(10, list.size());
assertEquals(183, ((Page<?>) list).getTotal());
list = countryMapper.selectByPageNumSize(3, 20);
assertEquals(20, list.size());
assertEquals(183, ((Page<?>) list).getTotal());
} finally {
sqlSession.close();
}
}
use of com.github.pagehelper.mapper.CountryMapper in project Mybatis-PageHelper by pagehelper.
the class TestIntMax method testCountCache.
/**
* 使用Mapper接口调用时,使用PageHelper.startPage效果更好,不需要添加Mapper接口参数
*/
@Test
public void testCountCache() {
SqlSession sqlSession = MybatisHelper.getSqlSession();
CountryMapper countryMapper = sqlSession.getMapper(CountryMapper.class);
try {
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(1, Integer.MAX_VALUE);
List<Country> list = countryMapper.selectIf(1);
assertEquals(2, list.get(0).getId());
assertEquals(182, list.size());
assertEquals(182, ((Page<?>) list).getTotal());
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(1, Integer.MAX_VALUE);
list = countryMapper.selectIf(null);
assertEquals(1, list.get(0).getId());
assertEquals(183, list.size());
assertEquals(183, ((Page<?>) list).getTotal());
} finally {
sqlSession.close();
}
}
use of com.github.pagehelper.mapper.CountryMapper in project Mybatis-PageHelper by pagehelper.
the class CacheTest method testMapperWithStartPage.
/**
* 使用Mapper接口调用时,使用PageHelper.startPage效果更好,不需要添加Mapper接口参数
*/
@Test
public void testMapperWithStartPage() {
SqlSession sqlSession = MybatisHelper.getSqlSession();
CountryMapper countryMapper = sqlSession.getMapper(CountryMapper.class);
try {
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(1, 10);
List<Country> list = countryMapper.selectGreterThanId(10);
assertEquals(10, list.size());
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(2, 10);
list = countryMapper.selectGreterThanIdAndNotEquelContryname(10, "china");
assertEquals(10, list.size());
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(3, 10);
list = countryMapper.selectGreterThanIdAndNotEquelContryname(10, "china");
assertEquals(10, list.size());
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(4, 10);
list = countryMapper.selectGreterThanIdAndNotEquelContryname(10, "china");
assertEquals(10, list.size());
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(5, 10);
list = countryMapper.selectGreterThanIdAndNotEquelContryname(10, "china");
assertEquals(10, list.size());
} finally {
sqlSession.close();
}
}
Aggregations