pageHelper分页查询

文章目录

  • 前言
  • 一、集成
    • 1.引入库
    • 2.配置yml
  • 二、编码
    • 1.Controller
    • 2.Service
    • 3.Mapper
    • 4.Mapper.xml
    • 5.StudentResult
  • 三、测试
    • 1.根据页码和页数
    • 2.根据name
  • 总结


前言

本篇文章介绍在java中使用pageHelper完成分页的功能。
使用的数据库为mysql,持久层框架mybatis。


一、集成

1.引入库

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

2.配置yml

pagehelper:helperDialect: mysqlreasonable: truesupportMethodsArguments: trueparams: count=countSql

二、编码

1.Controller

@Controller
@RequestMapping("StudentInfoController")
public class StudentInfoController{@Autowiredprivate StudentInfoService studentInfoService;@PostMapping("lists")@ResponseBodypublic Object lists(int pageNum,int pageSize,String name){PageInfo<StudentInfo> page=studentInfoService.lists(pageNum,pageSize,name) ;StudentResult result=new StudentResult(200, "请求成功", page.getList());return  result;}
}

2.Service

public class StudentInfoService{@Autowiredprivate StudentInfoMapper studentInfoMapper;/*** 分页查询* @param pageNum* @param pageSize* @param name* @return*/public PageInfo<StudentInfo> lists(int pageNum,int pageSize,String name){PageHelper.startPage(pageNum, pageSize);List<StudentInfo> list= studentInfoMapper.selectList(name);PageInfo<StudentInfo> pageInfo = new PageInfo<StudentInfo>(list);return  pageInfo;}
}

3.Mapper

@Repository
public interface StudentInfoMapper {List<StudentInfo> selectList(@Param("name") String name);
}

4.Mapper.xml

  <select id="selectList" resultMap="BaseResultMap">select * from t_student_info<where><if test="name != null">name = #{name,jdbcType=VARCHAR}</if></where>order by CAST(id AS SIGNED)</select>

5.StudentResult

public class StudentResult implements Serializable {private int code;private String msg;private Object data;public StudentResult() {}public StudentResult(int code, String msg) {this.code = code;this.msg = msg;}public StudentResult(int code, String msg, Object data) {this.code = code;this.msg = msg;this.data = data;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}@Overridepublic String toString() {return "StudentResult{" +"code=" + code +", msg='" + msg + '\'' +", data=" + data +'}';}
}

三、测试

1.根据页码和页数

在这里插入图片描述
在这里插入图片描述

2.根据name

在这里插入图片描述


总结

回到顶部

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/493381.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

★【递归】【构造二叉树】Leetcode 106.从中序与后序遍历序列构造二叉树

★【递归】【构造二叉树】Leetcode 106.从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树 106.从中序与后序遍历序列构造二叉树:star:思路分析递归解法 105. 从前序与中序遍历序列构造二叉树递归解法 ---------------&#x1f388;&#x1f388;题目链接&a…

PSA制氧装置的基本原理及在医疗领域的应用现状

随着医疗技术的不断进步&#xff0c;PSA(Pressure Swing Adsorption&#xff0c;变压吸附)制氧装置在医疗领域的应用日益广泛&#xff0c;其高效、安全、便捷的特点为现代医疗带来了革命性的变化。恒业通将从PSA制氧装置的基本原理出发&#xff0c;深入探讨其在医疗领域的应用现…

modbus-tcp协议详解

本文参考&#xff1a;Modbus协议中文版【完整版】.pdf&#xff0c;加上自己的理解的记录&#xff0c;该文章主要讲modbus-TCP协议。&#xff08;文档下载链接&#xff1a;【免费】modbus协议中文详细解释文档资源-CSDN文库&#xff09; 本系列文章分为三章&#xff1a; 1.mod…

蓝桥杯-标题统计

知识点: 关键是考察getline的作用 #include <iostream> using namespace std; int main() { string a; int t0; getline(cin,a);//每次读取一整行并把Enter键生成的换行符抛弃 for(int i0;i<a.length();i){ if(a[i]! )t; } cout<<t; return …

搜维尔科技:第九届元宇宙数字人大赛,参赛小组报名确认公告

各位参赛选手大家好&#xff0c;近期已收到新增报名信息如下表&#xff0c;请各位参赛选手确认&#xff0c;如果信息有误或信息不完整请电话联系赛务组工作人员进行更正 随着元宇宙时代的来临&#xff0c;数字人设计成为了创新前沿领域之一。为了提高大学生元宇宙虚拟人角色策划…

一个Post请求入门NestJS的路由与控制器

​ NestJS的控制器 控制器负责处理传入请求并向客户端返回响应。 控制器的目的是接收应用的特定请求。路由机制控制哪个控制器接收哪些请求。 通常&#xff0c;每个控制器都有不止一条路由&#xff0c;不同的路由可以执行不同的操作。 在使用了脚手架的项目中&#xff0c;我…

牛客周赛 Round 34 解题报告 | 珂学家 | 构造思维 + 置换环

前言 整体评价 好绝望的牛客周赛&#xff0c;彻底暴露了CF菜菜的本质&#xff0c;F题没思路&#xff0c;G题用置换环骗了50%, 这大概是唯一的亮点了。 A. 小红的字符串生成 思路: 枚举 a,b两字符在相等情况下比较特殊 a, b input().split() if a b:print (2)print (a)pri…

峰值检测电路

常用的峰值检测电路&#xff0c;如下图所示。 该电路有两种工作状态&#xff1a; 1、充电状态&#xff1a;D2导通&#xff0c;D1截止。 当U1的端比-端大时&#xff0c;V1VIN&#xff0c;VCV1-VD2&#xff0c;VOUTVC。这时&#xff0c;给电容C1充电。由于D1截止没有环路&#…

代码随想录算法训练营第二十三天| 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

文章目录 [1.修剪二叉搜索树(https://leetcode.cn/problems/trim-a-binary-search-tree/description/)2.将有序数组转换为二叉搜索树3.把二叉搜索树转换为累加树 [1.修剪二叉搜索树(https://leetcode.cn/problems/trim-a-binary-search-tree/description/) 遇到超范围节点&…

【Java】线程池总结——干货满满!!!

目录 一 使用线程池的好处 二 Executor 框架 2.1 简介 2.2 Executor 框架结构(主要由三大部分组成) 1) 任务(Runnable /Callable) 2) 任务的执行(Executor) 3) 异步计算的结果(Future) 2.3 Executor 框架的使用示意图 三 (重要)ThreadPoolExecutor 类简单介绍 3.1 Thr…

ASLR 和 PIE

前言 ASLR&#xff08;Address Space Layout Randomization&#xff0c;地址空间随机化&#xff09;是一种内存攻击缓解技术&#xff0c;是一种操作系统用来抵御缓冲区溢出攻击的内存保护机制。这种技术使得系统上运行的进程的内存地址无法被预测&#xff0c;使得与这些进程有…

积分商城管理系统的设计与实现

积分商城管理系统的设计与实现 获取源码——》公主号&#xff1a;计算机专业毕设大全