Java PageHelper分页(后端 com.github.pagehelper, 前端 jquery.bootpag)基本用法 亲测

Java PageHelper基本用法

  • 1. Maven包 pom.xml
  • 2. 环境 application.properties
  • 3. 数据库 `test` 和数据表 `user`及相关测试数据
  • 4. User.java(Entity)与 `user`数据表字段对应
  • 5. DAO(Data Access Object)数据访问接口 UserDao.java和实现类 UserDaoImpl.java
  • 6. UserMapper.xml
  • 7. userList.html
  • 8. 前端使用了 jquery.bootpag
  • 9. UserController.java(入口)
    • 页面浏览

1. Maven包 pom.xml

  
  
    1.5.17.RELEASE
  
  
  
    
      
      
        io.spring.platform
        platform-bom
        Brussels-SR14
        pom
        import
      
      
      
        org.springframework.boot
        spring-boot-dependencies
        ${spring-boot.version}
        pom
        import
      
      
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        1.3.2
      
      
        com.github.pagehelper
        pagehelper-spring-boot-starter
        1.2.9
      
      
        net.sourceforge.nekohtml
        nekohtml
        1.9.22
      
    
  


    
        
            org.springframework.boot
            spring-boot-starter-web
        
        
            mysql
            mysql-connector-java
        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
        
        
            com.github.pagehelper
            pagehelper-spring-boot-starter
        
        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        
        
            net.sourceforge.nekohtml
            nekohtml
        
    

2. 环境 application.properties


# Base
banner.charset=UTF-8
server.tomcat.uri-encoding=UTF-8
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
spring.messages.encoding=UTF-8
# Mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&serverTimezone=PRC&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=
# Mybatis
mybatis.mapper-locations=classpath:mapper/*.xml
# Html Template [LEGACYHTML5\u975E\u4E25\u683C, HTML5\u4E25\u683C]
spring.thymeleaf.mode=LEGACYHTML5
spring.thymeleaf.cache=false
spring.thymeleaf.check-template=true
spring.thymeleaf.check-template-location=true
spring.thymeleaf.prefix=classpath:views/
spring.thymeleaf.servlet.content-type=text/html
spring.thymeleaf.suffix=.html

3. 数据库 test 和数据表 user及相关测试数据


CREATE DATABASE `test` DEFAULT CHARSET utf8;
CREATE TABLE `user` (
  `id` int(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) DEFAULT NULL,
  `age` int(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
INSERT INTO `user` VALUES (1, '工作人员1', 21);
INSERT INTO `user` VALUES (2, '工作人员2', 22);
INSERT INTO `user` VALUES (3, '工作人员3', 23);
INSERT INTO `user` VALUES (4, '工作人员4', 24);
INSERT INTO `user` VALUES (5, '工作人员5', 25);
INSERT INTO `user` VALUES (6, '工作人员6', 26);
INSERT INTO `user` VALUES (7, '工作人员7', 27);
INSERT INTO `user` VALUES (8, '工作人员8', 28);
INSERT INTO `user` VALUES (9, '工作人员9', 29);
INSERT INTO `user` VALUES (10, '工作人员10', 30);
INSERT INTO `user` VALUES (11, '工作人员11', 31);
INSERT INTO `user` VALUES (12, '工作人员12', 32);
INSERT INTO `user` VALUES (13, '工作人员13', 33);
INSERT INTO `user` VALUES (14, '工作人员14', 34);
INSERT INTO `user` VALUES (15, '工作人员15', 35);
INSERT INTO `user` VALUES (16, '工作人员16', 36);
INSERT INTO `user` VALUES (17, '工作人员17', 37);
INSERT INTO `user` VALUES (18, '工作人员18', 38);
INSERT INTO `user` VALUES (19, '工作人员19', 39);
INSERT INTO `user` VALUES (20, '工作人员20', 40);
INSERT INTO `user` VALUES (21, '工作人员21', 41);
INSERT INTO `user` VALUES (22, '工作人员22', 42);
INSERT INTO `user` VALUES (23, '工作人员23', 43);
INSERT INTO `user` VALUES (24, '工作人员24', 44);
INSERT INTO `user` VALUES (25, '工作人员25', 45);
INSERT INTO `user` VALUES (26, '工作人员26', 46);
INSERT INTO `user` VALUES (27, '工作人员27', 47);
INSERT INTO `user` VALUES (28, '工作人员28', 48);
INSERT INTO `user` VALUES (29, '工作人员29', 49);
INSERT INTO `user` VALUES (30, '工作人员30', 50);
INSERT INTO `user` VALUES (31, '工作人员31', 51);
INSERT INTO `user` VALUES (32, '工作人员32', 52);
INSERT INTO `user` VALUES (33, '工作人员33', 53);
INSERT INTO `user` VALUES (34, '工作人员34', 54);
INSERT INTO `user` VALUES (35, '工作人员35', 55);
INSERT INTO `user` VALUES (36, '工作人员36', 56);
INSERT INTO `user` VALUES (37, '工作人员37', 57);
INSERT INTO `user` VALUES (38, '工作人员38', 58);
INSERT INTO `user` VALUES (39, '工作人员39', 59);
INSERT INTO `user` VALUES (40, '工作人员40', 60);
INSERT INTO `user` VALUES (41, '工作人员41', 61);
INSERT INTO `user` VALUES (42, '工作人员42', 62);
INSERT INTO `user` VALUES (43, '工作人员43', 63);
INSERT INTO `user` VALUES (44, '工作人员44', 64);
INSERT INTO `user` VALUES (45, '工作人员45', 65);
INSERT INTO `user` VALUES (46, '工作人员46', 66);
INSERT INTO `user` VALUES (47, '工作人员47', 67);
INSERT INTO `user` VALUES (48, '工作人员48', 68);
INSERT INTO `user` VALUES (49, '工作人员49', 69);
INSERT INTO `user` VALUES (50, '工作人员50', 70);
INSERT INTO `user` VALUES (51, '工作人员51', 71);

4. User.java(Entity)与 user数据表字段对应


import java.io.Serializable;

public class User implements Serializable {
    private static final long serialVersionUID = 8755803182642361875L;

    private Long id;

    private Long age;

    private String name;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getAge() {
        return age;
    }

    public void setAge(Long age) {
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

}

5. DAO(Data Access Object)数据访问接口 UserDao.java和实现类 UserDaoImpl.java


/**
* User的数据访问接口 UserDao.java
*/
import com.test.web2.entity.User;
import java.util.List;

public interface UserDao {
    List getList(Integer pageNo, Integer pageSize);
}

/**
* 实现类 UserDaoImpl.java
*/
import com.github.pagehelper.PageHelper;
import com.test.web2.dao.UserDao;
import com.test.web2.entity.User;
import org.apache.ibatis.session.SqlSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;

@Repository
public class UserDaoImpl implements UserDao {
    @Autowired
    private SqlSession sqlSession;

    static final String MAPPER = "com.test.web2.UserMapper.";

    @Override
    public List getList(final Integer pageNo, final Integer pageSize) {
        PageHelper.startPage(pageNo, pageSize);
        return sqlSession.selectList(MAPPER + "getList");
    }

}

6. UserMapper.xml





	


7. userList.html





    
    
    
    
    
    
    
    
    


用户列表:

用户编号 年龄 名字
没有用户!

8. 前端使用了 jquery.bootpag


    
    
    

9. UserController.java(入口)


import com.github.pagehelper.PageInfo;
import com.test.web2.dao.UserDao;
import com.test.web2.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;

@Controller
public class UserController {
    @Autowired
    private UserDao userDao;

    /**
     * 用户列表
     * */
    @RequestMapping(value = "/getList", method = RequestMethod.GET)
    public String getList(@RequestParam(value = "pageNo", required = false, defaultValue="1") Integer pageNo,
                          @RequestParam(value = "pageSize", required = false, defaultValue="10") Integer pageSize,
                          Model model) {
        /**
         * 获取用户列表
         * */
        final List data = userDao.getList(pageNo, pageSize);
        final PageInfo pages = new PageInfo<>(data);

        /**
         * 用户数据及分页信息绑定到 Model
         * */
        model.addAttribute("pageNo", pages.getPageNum());
        model.addAttribute("pageCount", pages.getPages());
        model.addAttribute("list", pages.getList());
        return "userList";
    }

}

页面浏览


http://127.0.0.1:8080/getList?pageNo=2&pageSize=10

Java PageHelper分页(后端 com.github.pagehelper, 前端 jquery.bootpag)基本用法 亲测_第1张图片

如果您觉得有帮助,欢迎点赞哦 ~ 谢谢!!

你可能感兴趣的:(Spring,Boot,JavaScript,Java)