springboot集成pagehelper实现分页

简介: springboot集成pagehelper实现分页

1.首先加入pagehelper的pom依赖

<!--pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>

2.准备实体类User.java

public class User {
    private int id;
    private String username;
    private String password;
  省略getter setter 方法
}  

3.controller层代码

[@Controller](https://my.oschina.net/u/1774615)
public class UserController {
    @Autowired
    UserMapper userMapper;
    //第一种实现方式
    //http://localhost:8080/getUser?pageNum=1&pageSize=2
    @RequestMapping(value = {"/getUser","/"})
    public String getUser(Integer pageNum, Integer pageSize, Model model){
        if (pageNum==null&&pageSize==null){
            pageNum=1;
            pageSize=5;
        }
        if (pageNum!=null&&pageSize==null){
            pageSize=3;
        }
        PageHelper.startPage(pageNum,pageSize);
        Page<User> userList = userMapper.getUserList();
        model.addAttribute("userStat",userList);
        return "index";
    }
}

4.mapper类

@Mapper
public interface UserMapper {
    @Select("select * from user")
    Page<User> getUserList();
}

5.页面展示index.html

<body>
<h1>查询所有的用户。。。</h1>
<table class="table table-hover">
    <tr>
        <td class="active">编号</td>
        <td class="success">用户名</td>
        <td class="warning">密码</td>
    </tr>
    <tr th:each="user : ${userStat}">
        <td class="active" th:text="${user.id}">编号</td>
        <td class="success" th:text="${user.username}">用户名</td>
        <td class="warning" th:text="${user.password}" >密码</td>
    </tr>
</table>
<nav aria-label="Page navigation">
    <ul class="pagination">
        <li>
            <a href="#" aria-label="Previous">
                <span aria-hidden="true">&laquo;</span>
            </a>
        </li>
        <li><a href="#" th:href="@{/getUser?pageNum=1}">1</a></li>
        <li><a href="#" th:href="@{/getUser?pageNum=2}">2</a></li>
        <li><a href="#" th:href="@{/getUser?pageNum=3}">3</a></li>
        <li><a href="#" th:href="@{/getUser?pageNum=4}">4</a></li>
        <li><a href="#" th:href="@{/getUser?pageNum=5}">5</a></li>
        <li>
            <a href="#" aria-label="Next">
                <span aria-hidden="true">&raquo;</span>
            </a>
        </li>
    </ul>
</nav>
</body>


目录
相关文章
|
14天前
|
前端开发 Java 应用服务中间件
从零手写实现 tomcat-08-tomcat 如何与 springboot 集成?
该文是一系列关于从零开始手写实现 Apache Tomcat 的教程概述。作者希望通过亲自动手实践理解 Tomcat 的核心机制。文章讨论了 Spring Boot 如何实现直接通过 `main` 方法启动,Spring 与 Tomcat 容器的集成方式,以及两者生命周期的同步原理。文中还提出了实现 Tomcat 的启发,强调在设计启动流程时确保资源的正确加载和初始化。最后提到了一个名为 mini-cat(嗅虎)的简易 Tomcat 实现项目,开源于 [GitHub](https://github.com/houbb/minicat)。
|
15天前
|
前端开发 Java 应用服务中间件
从零手写实现 tomcat-08-tomcat 如何与 springboot 集成?
本文探讨了Spring Boot如何实现像普通Java程序一样通过main方法启动,关键在于Spring Boot的自动配置、内嵌Servlet容器(如Tomcat)以及`SpringApplication`类。Spring与Tomcat集成有两种方式:独立模式和嵌入式模式,两者通过Servlet规范、Spring MVC协同工作。Spring和Tomcat的生命周期同步涉及启动、运行和关闭阶段,通过事件和监听器实现。文章鼓励读者从实现Tomcat中学习资源管理和生命周期管理。此外,推荐了Netty权威指南系列文章,并提到了一个名为mini-cat的简易Tomcat实现项目。
|
1天前
|
消息中间件 Java Spring
Springboot 集成Rabbitmq之延时队列
Springboot 集成Rabbitmq之延时队列
4 0
|
1天前
|
网络协议 Java Spring
Springboot 集成websocket
Springboot 集成websocket
5 0
|
1天前
|
XML Java 数据库
springboot集成flowable
springboot集成flowable
|
3天前
|
安全 Java 数据库连接
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
|
11天前
|
缓存 NoSQL Java
springboot业务开发--springboot集成redis解决缓存雪崩穿透问题
该文介绍了缓存使用中可能出现的三个问题及解决方案:缓存穿透、缓存击穿和缓存雪崩。为防止缓存穿透,可校验请求数据并缓存空值;缓存击穿可采用限流、热点数据预加载或加锁策略;缓存雪崩则需避免同一时间大量缓存失效,可设置随机过期时间。文章还提及了Spring Boot中Redis缓存的配置,包括缓存null值、使用前缀和自定义过期时间,并提供了改造代码以实现缓存到期时间的个性化设置。
|
16天前
|
Java Docker 容器
SpringBoot项目集成XXL-job
SpringBoot项目集成XXL-job
|
18天前
|
Java 关系型数据库 数据库
【SpringBoot系列】微服务集成Flyway
【4月更文挑战第7天】SpringBoot微服务集成Flyway
【SpringBoot系列】微服务集成Flyway
|
21天前
|
XML 存储 Java
SpringBoot集成WebService
SpringBoot集成WebService
34 1