猿问

mybatis 分页插件原理是什么样的?

@RequestMapping(value = "/findAll",method = RequestMethod.GET)
    public String  getUsers(){
        int pageNum = 1;
        int pageSize = 10;
        PageHelper.startPage(pageNum, pageSize);
        List<User> list = userService.findAllUser();
        PageInfo pageInfo = new PageInfo(list);
        Page page = (Page) list;
        return "PageInfo: " + JSON.toJSONString(pageInfo) + ", Page: " + JSON.toJSONString(page);
    }
<select id="findAllUser" resultType="User">
        SELECT * from users
    </select>
PageInfo: {"endRow":10,"firstPage":1,"hasNextPage":true,"hasPreviousPage":false,"isFirstPage":true,"isLastPage":false,"lastPage":2,"list":[{"id":2,"name":"awbeci"},{"id":3,"name":"wulingmei"},{"id":4,"name":"qinxin"},{"id":5,"name":"qinxin2"},{"id":6,"name":"qinxin3"},{"id":7,"name":"???"},{"id":8,"name":"caochenglu"},{"id":10,"name":"sdfsdfs"},{"id":13,"name":"wangle"},{"id":14,"name":"react-cd-player"}],"navigateFirstPage":1,"navigateLastPage":2,"navigatePages":8,"navigatepageNums":[1,2],"nextPage":2,"pageNum":1,"pageSize":10,"pages":2,"prePage":0,"size":10,"startRow":1,"total":17}, Page: [{"id":2,"name":"awbeci"},{"id":3,"name":"wulingmei"},{"id":4,"name":"qinxin"},{"id":5,"name":"qinxin2"},{"id":6,"name":"qinxin3"},{"id":7,"name":"???"},{"id":8,"name":"caochenglu"},{"id":10,"name":"sdfsdfs"},{"id":13,"name":"wangle"},{"id":14,"name":"react-cd-player"}]

根据上面代码,确实可以分页了,但是我有点想不通:因为我的查询语句是select * from users,难道是我先从数据库中查询出所有数据,然后再在getUsers方法里面通过查询插件再进行分页???

慕莱坞森
浏览 1288回答 3
3回答

宝慕林4294392

看这个写法应该就是内存中分页了
随时随地看视频慕课网APP

相关分类

Java
我要回答