PageHelper(springboot,mybatis)

首先依赖:

复制代码
<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.0</version>
        </dependency>

        <!--PageHelper依赖-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.3</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.24</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <!--            使用Spring Validation,对接口的参数进行合法性校验-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>
        <dependency>
            <!--            JWT令牌-->
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>4.4.0</version>
        </dependency>

        <!-- JSON -->
        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2</artifactId>
            <version>2.0.18</version>
        </dependency>
    </dependencies>

yml:

复制代码
mybatis:
  type-aliases-package: usx.xwt.taotao.domain //实体类包
  mapper-locations: classpath:/mapper/*.xml   //mybatis xml(数据库语句文件)

pagehelper:
  helper - dialect: mysql # 设置数据库方言,根据实际数据库修改
  reasonable: true

这里的PageHelper依赖一定要看清(很重要),因为我之前就是用的不是springboot的(那种好像挺麻烦的,还要自己配置mybatis)所以出问题了,而且这两个还不能兼容(两个依赖只能选着一个),plus用法也不同,记得辨别清楚!

复制代码
Page<Thread> page = PageHelper.startPage(pageNo, pageSize);//Thread是你的实体类,两个参数分别是 当前页 和 当前页数据的数量
		if(idName.equals("threadId")){
			mapper.getRepliesWithUserInfoByThreadId(id);
		}
		else {
			mapper.getRepliesWithUserInfoByReplyId(id);
		}                                                  //查询数据库
		ResponsePage pageResult = new ResponsePage(page.getPageNum(), (int) page.getTotal(), page.getPages());                         //自己封装的
		System.out.println(pageResult);
		System.out.println(page);

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ResponsePage {
	private int current;   //当前页数
	private int total;    //总的数据量
	private int pages;    //总的页数
}

当然page还能返回其他数据,这个网上很好找,其实这三个应该够用了!

相关推荐
双向333 分钟前
RTX 4090助力深度学习:从PyTorch到生产环境的完整实践指南
后端
shengjk14 分钟前
Java vs Python Web 服务器深度对比:从传统到现代的演进之路
后端
绝无仅有5 分钟前
某辅导教育大厂真实面试过程与经验总结
后端·面试·架构
绝无仅有7 分钟前
Java后端技术面试:银行业技术架构相关问题解答
后端·面试·github
这里有鱼汤14 分钟前
【花姐小课堂】新手也能秒懂!用「风险平价」打造扛造的投资组合
后端·python
CodeSheep18 分钟前
当了leader才发现,大厂最想裁掉的,不是上班总迟到的,也不是下班搞失联的,而是经常把这3句话挂在嘴边的
前端·后端·程序员
shark_chili27 分钟前
Git Worktree:优雅解决多分支开发痛点的终极利器
后端
程序员爱钓鱼1 小时前
Go语言实战案例-项目实战篇:新闻聚合工具
后端·google·go
IT_陈寒1 小时前
Python开发者必须掌握的12个高效数据处理技巧,用过都说香!
前端·人工智能·后端
一只叫煤球的猫9 小时前
写代码很6,面试秒变菜鸟?不卖课,面试官视角走心探讨
前端·后端·面试