Search in sources :

Example 1 with User

use of com.github.pagehelper.model.User in project Mybatis-PageHelper by pagehelper.

the class PageTest method testMapperWithStartPageAndReasonableFalse.

@Test
public void testMapperWithStartPageAndReasonableFalse() {
    SqlSession sqlSession = MybatisReasonableHelper.getSqlSession();
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    try {
        // 获取第20页,2条内容
        // 分页插件会自动改为查询最后一页
        PageHelper.startPage(20, 50, true, false, false);
        List<User> list = userMapper.selectAll();
        PageInfo<User> page = new PageInfo<User>(list);
        assertEquals(0, list.size());
        assertEquals(0, page.getStartRow());
        assertEquals(20, page.getPageNum());
        assertEquals(183, page.getTotal());
        PageHelper.startPage(4, 50, true, false, false);
        list = userMapper.selectAll();
        page = new PageInfo<User>(list);
        assertEquals(33, list.size());
        assertEquals(151, page.getStartRow());
        assertEquals(4, page.getPageNum());
        assertEquals(183, page.getTotal());
        PageHelper.startPage(-1, 50, true, false, false);
        list = userMapper.selectAll();
        page = new PageInfo<User>(list);
        assertEquals(0, list.size());
        assertEquals(0, page.getStartRow());
        assertEquals(-1, page.getPageNum());
        assertEquals(183, page.getTotal());
    } finally {
        sqlSession.close();
    }
}
Also used : UserMapper(com.github.pagehelper.mapper.UserMapper) PageInfo(com.github.pagehelper.PageInfo) User(com.github.pagehelper.model.User) SqlSession(org.apache.ibatis.session.SqlSession) Test(org.junit.Test)

Example 2 with User

use of com.github.pagehelper.model.User in project Mybatis-PageHelper by pagehelper.

the class PageTest method testMapperWithStartPageAndPageSizeZeroFalse.

@Test
public void testMapperWithStartPageAndPageSizeZeroFalse() {
    SqlSession sqlSession = MybatisReasonableHelper.getSqlSession();
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    try {
        // 获取第20页,2条内容
        // 分页插件会自动改为查询最后一页
        PageHelper.startPage(1, 0, true, true, false);
        List<User> list = userMapper.selectAll();
        PageInfo<User> page = new PageInfo<User>(list);
        assertEquals(0, list.size());
        assertEquals(0, page.getStartRow());
        assertEquals(1, page.getPageNum());
        assertEquals(183, page.getTotal());
        PageHelper.startPage(1, Integer.MAX_VALUE, true, true, false);
        list = userMapper.selectAll();
        page = new PageInfo<User>(list);
        assertEquals(183, list.size());
        assertEquals(1, page.getStartRow());
        assertEquals(1, page.getPageNum());
        assertEquals(183, page.getTotal());
    } finally {
        sqlSession.close();
    }
}
Also used : UserMapper(com.github.pagehelper.mapper.UserMapper) PageInfo(com.github.pagehelper.PageInfo) User(com.github.pagehelper.model.User) SqlSession(org.apache.ibatis.session.SqlSession) Test(org.junit.Test)

Example 3 with User

use of com.github.pagehelper.model.User in project Mybatis-PageHelper by pagehelper.

the class PageTest method testMapperWithStartPageAndReasonableTrue.

@Test
public void testMapperWithStartPageAndReasonableTrue() {
    SqlSession sqlSession = MybatisReasonableHelper.getSqlSession();
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    try {
        // 获取第20页,2条内容
        // 分页插件会自动改为查询最后一页
        PageHelper.startPage(20, 50, true, true, false);
        List<User> list = userMapper.selectAll();
        PageInfo<User> page = new PageInfo<User>(list);
        assertEquals(33, list.size());
        assertEquals(151, page.getStartRow());
        assertEquals(4, page.getPageNum());
        assertEquals(183, page.getTotal());
        PageHelper.startPage(4, 50, true, true, false);
        list = userMapper.selectAll();
        page = new PageInfo<User>(list);
        assertEquals(33, list.size());
        assertEquals(151, page.getStartRow());
        assertEquals(4, page.getPageNum());
        assertEquals(183, page.getTotal());
        PageHelper.startPage(-1, 50, true, true, false);
        list = userMapper.selectAll();
        page = new PageInfo<User>(list);
        assertEquals(50, list.size());
        assertEquals(1, page.getStartRow());
        assertEquals(1, page.getPageNum());
        assertEquals(183, page.getTotal());
    } finally {
        sqlSession.close();
    }
}
Also used : UserMapper(com.github.pagehelper.mapper.UserMapper) PageInfo(com.github.pagehelper.PageInfo) User(com.github.pagehelper.model.User) SqlSession(org.apache.ibatis.session.SqlSession) Test(org.junit.Test)

Example 4 with User

use of com.github.pagehelper.model.User in project Mybatis-PageHelper by pagehelper.

the class RowBoundsTest method testNamespaceWithRowBounds2.

@Test
public void testNamespaceWithRowBounds2() {
    SqlSession sqlSession = RowBoundsHelper.getSqlSession();
    try {
        // 获取从0开始,10条内容
        List<User> list = sqlSession.selectList("selectIf", null, new RowBounds(0, 10));
        assertEquals(10, list.size());
        // 判断查询结果的位置是否正确
        assertEquals(1, list.get(0).getId());
        assertEquals(10, list.get(list.size() - 1).getId());
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("id", 10);
        // 获取从10开始,10条内容
        list = sqlSession.selectList("selectIf", map, new RowBounds(90, 10));
        assertEquals(10, list.size());
        // 判断查询结果的位置是否正确
        assertEquals(101, list.get(0).getId());
        assertEquals(110, list.get(list.size() - 1).getId());
    } finally {
        sqlSession.close();
    }
}
Also used : User(com.github.pagehelper.model.User) SqlSession(org.apache.ibatis.session.SqlSession) HashMap(java.util.HashMap) RowBounds(org.apache.ibatis.session.RowBounds) Test(org.junit.Test)

Example 5 with User

use of com.github.pagehelper.model.User in project Mybatis-PageHelper by pagehelper.

the class RowBoundsTest method testNamespaceWithRowBounds.

/**
 * 使用命名空间方式的RowBounds进行分页,使用RowBounds时不进行count查询
 * 通过修改代码可以进行count查询,没法通过其他方法改变参数
 * 因为如果通过调用一个别的方法来标记count查询,还不如直接startPage
 * <p/>
 * 同时使用startPage时,以startPage为准,会根据startPage参数来查询
 */
@Test
public void testNamespaceWithRowBounds() {
    SqlSession sqlSession = RowBoundsHelper.getSqlSession();
    try {
        // 获取从0开始,10条内容
        List<User> list = sqlSession.selectList("selectAll", null, new RowBounds(0, 10));
        assertEquals(10, list.size());
        // 判断查询结果的位置是否正确
        assertEquals(1, list.get(0).getId());
        assertEquals(10, list.get(list.size() - 1).getId());
        // 获取从10开始,10条内容
        list = sqlSession.selectList("selectAll", null, new RowBounds(90, 10));
        assertEquals(10, list.size());
        // 判断查询结果的位置是否正确
        assertEquals(91, list.get(0).getId());
        assertEquals(100, list.get(list.size() - 1).getId());
        // 获取从20开始,20条内容
        list = sqlSession.selectList("selectAll", null, new RowBounds(100, 20));
        assertEquals(20, list.size());
        // 判断查询结果的位置是否正确
        assertEquals(101, list.get(0).getId());
        assertEquals(120, list.get(list.size() - 1).getId());
    } finally {
        sqlSession.close();
    }
}
Also used : User(com.github.pagehelper.model.User) SqlSession(org.apache.ibatis.session.SqlSession) RowBounds(org.apache.ibatis.session.RowBounds) Test(org.junit.Test)

Aggregations

User (com.github.pagehelper.model.User)87 SqlSession (org.apache.ibatis.session.SqlSession)87 Test (org.junit.Test)87 UserMapper (com.github.pagehelper.mapper.UserMapper)73 PageInfo (com.github.pagehelper.PageInfo)17 RowBounds (org.apache.ibatis.session.RowBounds)14 HashMap (java.util.HashMap)13 ArrayList (java.util.ArrayList)5 PageRowBounds (com.github.pagehelper.PageRowBounds)4 Map (java.util.Map)3 UserExample (com.github.pagehelper.model.UserExample)2 ISelect (com.github.pagehelper.ISelect)1 UserQueryModel (com.github.pagehelper.model.UserQueryModel)1