Mybatis 使用PageHelper封装通用Dao分页方法

参考:html

PageHelper官网:https://pagehelper.github.io/docs/howtouse/#3-%E5%A6%82%E4%BD%95%E5%9C%A8%E4%BB%A3%E7%A0%81%E4%B8%AD%E4%BD%BF%E7%94%A8node

 

 

1.业务层调用通用Dao并传入参数:映射问简中的 namespce.(CRUD标签)id,(参数对象)bean,(当前页数、当前页总条数等信息)basepagegit

    @SuppressWarnings("unchecked")
    @Override
    public PageResultModel<SystemBean> list(SystemBean bean, BasePage basePage) {
        PageResultModel<SystemBean> model = new PageResultModel<SystemBean>();
        if (basePage == null) {
            model.setData((List<SystemBean>) daoRouter.query("System.query", bean));
        } else {
            model.setData((List<SystemBean>) daoRouter.query("System.query", bean, basePage));
            model.setBasePage(basePage);
        }
        return model;
    }

 

2.通用Dao层方法 当前第几页做为开始条数参数,当前页总条数做为结束条数参数 PageHelper.startPage(startRow, pageSize, true); 接下来调用查询所有方法会自动进行分页github

    public List<?> query(String statement, Object parameter, BasePage basePage) {
        int startRow = basePage.getCurrentPage();
        int pageSize = basePage.getPageSize();
        Page<Object> page = PageHelper.startPage(startRow, pageSize, true);
        List<?> list = getSqlMapClientTemplate().selectList(statement, parameter);
        basePage.setTotalItem((int) page.getTotal());
        return list;
    }

参考:http://www.javashuo.com/article/p-xpwnwzmv-kn.htmlspring

相关文章
相关标签/搜索