PageHelper 是国内非常优秀的一款开源的 mybatis 分页插件,它支持基本主流与常用的数据库,例如 mysql、 oracle、mariaDB、DB2、SQLite、Hsqldb 等。
网址:https://pagehelper.github.io/ 本项目在 github 的项目地址:https://github.com/pagehelper/Mybatis-PageHelper 本项目在 gitosc 的项目地址:http://git.oschina.net/free/Mybatis_PageHelper
1.在 pom.xml 中添加如下依赖:

 
    com.github.pagehelper 
    pagehelper 
  1. 在 MyBatis 配置 xml 中配置拦截器插件 (dao层,配置在sqlSessionFactory里)

     
    
            
                
                    
                    
                        
                            helperDialect=mysql
                            reasonable=true
                        
                    
                
            
        

    3.配置service

    service接口

    /**
     * 查询所有部门,带分页(用的pageHelper)
     * @return
     */
    PageInfo findAll(int page, int size);

    service实现类

    public PageInfo findAll(int page, int size) {
        //1.设置分页信息,使用PageHelper的静态方法
        PageHelper.startPage(page,size);
        //2.调用deptDao的查询所有方法
        List companies = companyDao.findAll();
        //3.创建返回值并返回
        return new PageInfo(companies);
    }

    4。配置controller的方法

    @Autowired
    private CompanyService companyService;
    
    /**
     * 查询所有
     * @return
     */
    @RequestMapping("/list")
    public String list(@RequestParam(defaultValue = "1") int page,@RequestParam(defaultValue = "2") int size){
        //1.调用service查询
       // List companyList = companyService.findAll();
        PageInfo pageInfo = companyService.findAll(page, size);
        //2.存入请求域中
       // request.setAttribute("list",companyList);
        request.setAttribute("page",pageInfo);
        //3.转发到列表页面
        return "company/company-list";
    }

    前端页面