如何在springboot中使用PageHelper分页插件

文章目录

          • 1. pom依赖
          • 2. yml
          • 3. 实体类
          • 4. mapper映射文件
          • 4. mapper接口
          • 5. service接口
          • 6. 实现类
          • 7. controller
          • 8. 浏览器验证

使用思路:
1.引入myabtis和pagehelper依赖
2.yml中配置mybatis扫描和实体类
3. 这2行代码
pageNum:当前第几页
pageNum:显示多少条数据
userList:数据库查询的数据数据列表PageHelper.startPage(pageNum, pageSize);PageInfo pageInfo = new PageInfo(userList);最后返回一个pageInfo 对象即可,pageInfo 这个对象中只有数据一些信息,但是,没有成功失败的状态或者提示语。真实企业中会封装一个返回对象,把pageInfo 放到对象中
1. pom依赖
<!--Myabtis依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.2</version></dependency><!--pagehelper依赖--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.13</version></dependency><!--mysql依赖--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.20</version></dependency><!--数据源--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><!--提高效率lombok插件--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>
2. yml
spring:application:name: springboot-vuedatasource:type: com.alibaba.druid.pool.DruidDataSourcedriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/vue?characterEncoding=UTF-8&serverTimezone=GMT%2B8username: rootpassword: rootserver:port: 8989servlet:context-path: /vue#mybatis配置信息
mybatis:configuration:map-underscore-to-camel-case: true#控制台日志配置 打印sqllog-impl: org.apache.ibatis.logging.stdout.StdOutImplmapper-locations: classpath:mappers/*.xmltype-aliases-package: com.baizhi.entity#数据库方言
pagehelper:helper-dialect: mysql#控制台日志配置
logging:pattern:console: "[%thread] %-5level %logger{36} - %msg%n"
3. 实体类
package com.baizhi.entity;import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;import java.io.Serializable;@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Accessors(chain = true)
public class TUser implements Serializable {private static final long serialVersionUID = 745741804375055500L;private Integer id;private String name;private Integer age;@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")private String bir;
}
4. mapper映射文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.baizhi.dao.TUserDao"><resultMap type="com.baizhi.entity.TUser" id="TUserMap"><result property="id" column="id" jdbcType="INTEGER"/><result property="name" column="name" jdbcType="VARCHAR"/><result property="age" column="age" jdbcType="INTEGER"/><result property="bir" column="bir" jdbcType="VARCHAR"/></resultMap><select id="selectUserAll"  resultMap="TUserMap">selectid, name, age, birfrom vue.t_user</select>
</mapper>
4. mapper接口
package com.baizhi.dao;import com.baizhi.entity.TUser;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;/*** (TUser)表数据库访问层** @author makejava* @since 2020-05-05 18:39:21*/
@Mapper
public interface TUserDao {List<TUser> selectUserAll();
}
5. service接口
package com.baizhi.service;import com.baizhi.entity.TUser;
import com.github.pagehelper.PageInfo;import java.util.List;/*** (TUser)表服务接口** @author makejava* @since 2020-05-05 18:39:22*/
public interface TUserService {PageInfo list(Integer pageNum, Integer pageSize);
}
6. 实现类
package com.baizhi.service.impl;import com.baizhi.dao.TUserDao;
import com.baizhi.entity.TUser;
import com.baizhi.service.TUserService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;import javax.annotation.Resource;
import java.util.List;/*** (TUser)表服务实现类** @author makejava* @since 2020-05-05 18:39:22*/
@Service("tUserService")
public class TUserServiceImpl implements TUserService {@Resourceprivate TUserDao tUserDao;public PageInfo list(Integer pageNum, Integer pageSize) {PageHelper.startPage(pageNum, pageSize);List<TUser> userList = this.tUserDao.selectUserAll();//如果返回前的数据 和 数据库实体 对象数据一致 采下面方式//如果不一致,采用 PageInfo pageInfo = new PageInfo(); pageInfo.setList(shippingList);PageInfo pageInfo = new PageInfo(userList);return pageInfo;}
}
7. controller
package com.baizhi.controller;import com.baizhi.service.TUserService;
import com.github.pagehelper.PageInfo;
import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;/*** (TUser)表控制层** @author makejava* @since 2020-05-05 18:39:22*/
@RestController
@CrossOrigin
@RequestMapping("user")
public class TUserController {/*** 服务对象*/@Resourceprivate TUserService tUserService;@GetMapping("findAll")public PageInfo findAll(@RequestParam(required = false, defaultValue = "1") Integer pageNum,@RequestParam(required = false, defaultValue = "10") Integer pageSize) {PageInfo list = this.tUserService.list(pageNum, pageSize);return list;}
}
8. 浏览器验证

http://localhost:8989/vue/user/findAll?pageNum=0&pageSize=5

在这里插入图片描述

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

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

相关文章

6.6折票仅剩3天 | BDTC 2019全日程公布,哪些是你感兴趣的话题?

2019年12月5-7日&#xff0c;由中国计算机学会主办&#xff0c;CCF 大数据专家委员会承办&#xff0c;CSDN、中科天玑数据科技股份有限公司协办的中国大数据技术大会&#xff08;BDTC 2019&#xff09;将于北京长城饭店隆重举行。届时&#xff0c;超过百位顶尖技术专家将齐聚于…

云栖专辑| 阿里毕玄:程序员的成长路线

2018年12月20日&#xff0c;云栖社区3周岁生日。阿里巴巴常说“晴天修屋顶”&#xff0c;所以我们特别策划了这个专辑——分享给开发者们20个阿里故事&#xff0c;50本书籍。第一位是林昊&#xff08;毕玄&#xff09;。 在这篇《程序员的成长路线》里&#xff0c;阿里基础设施…

java线程条件变量_使用条件变量(多线程笔记)

条件变量属性&#xff1a;使用条件变量可以以原子方式阻塞线程&#xff0c;知道某个特定条件为真为止。条件变量始终与互斥锁一起使用。使用条件变量&#xff0c;线程可以以原子方式阻塞&#xff0c;知道满足某个条件为止。对掉件的测试时在互斥锁的保护下进行的。如果条件为假…

用PyTorch创建一个图像分类器?So easy!(Part 2)

在第一部分中&#xff0c;我们知道了为什么以及如何加载预先训练好的神经网络&#xff0c;我们可以用自己的分类器代替已有神经网络的分类器。那么&#xff0c;在这篇文章中&#xff0c;我们将学习如何训练分类器。 训练分类器 首先&#xff0c;我们需要为分类器提供待分类的…

涨姿势,一个通信项目从开始到结束,原来还包括这些工作

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 小枣君责编 | 阿秃本月12日&#xff0c;中国移动31个省的通信工程设计与可行性研究集采正式启动。这次集采规模庞大&#xff0c;涵盖了无线网(5G、FDD、NB等)、核心网、承载网、支撑网等专业方向&#xff0c;预估基本规模超4…

spring项目链接RabbitMQ集群

文章目录1.pom2. spring-rabbitmq-producer.xml3. spring-rabbitmq-consumer.xml4. rabbitmq.properties1.pom <!--spring整合rabbitmq--><dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><version&g…

听说支付宝有一个“疯起来连自己都打”的项目

小蚂蚁说&#xff1a; 自古红蓝出CP&#xff0c;在蚂蚁金服就有这样两支“相爱相杀”的队伍——红军和蓝军。蓝军是进攻方&#xff0c;主要职责是挖掘系统的弱点并发起“真实”的攻击&#xff0c;俗称“找茬”&#xff1b;红军则是防守方&#xff0c;其防控体系建设中的实时核…

蚂蚁金服红蓝军技术攻防演练究竟有多“狠”

如果一个技术团队不干别的&#xff0c;专门“搞破坏”&#xff0c;这是一种怎样的存在&#xff1f;这真的不是“天方夜谭”&#xff0c;在支付宝确实有这么一支队伍——技术蓝军。蓝军的任务就是不断地攻击和进攻&#xff0c;而防守方则是技术红军。在支付宝&#xff0c;蓝军从…

java虚拟机中xms_java JVM虚拟机选项: Xms Xmx PermSize MaxPermSize 区别

java虽然是自动回收内存&#xff0c;但是应用程序&#xff0c;尤其服务器程序最好根据业务情况指明内存分配限制。否则可能导致应用程序宕掉。举例说明含义&#xff1a;-Xms128m表示JVM Heap(堆内存)最小尺寸128MB&#xff0c;初始分配-Xmx512m表示JVM Heap(堆内存)最大允许的尺…

linux 目录挂载

背景&#xff1a;文件服务器200G&#xff0c;日志大小已经超过200G&#xff0c;使用率达到100% 解决方案&#xff1a; nas挂载&#xff0c;申请的挂载磁盘空间1T 挂载声明&#xff1a; 当执行挂载命令后&#xff0c;本地挂载的原目录下面是空的 只有解挂后&#xff0c;以前目录…

阿里巴巴在内蒙古旱区试水物联网灌溉技术,一年省出1.5个西湖

阿里巴巴正用物联网技术解决干旱地区的灌溉问题&#xff0c;通过搭建农业物联网平台&#xff0c;全面监测农作物的生长状态&#xff0c;从而匹配最节约的灌溉方案。12月19日试验区研究人员得出预测结果&#xff1a;一年可以省出1.5个西湖的水。 一直以来干旱是困扰人类的重要环…

不少人暗搓搓的准备春招了,我有一些好东东和招聘信息给你

2017远去了&#xff01;2018远去了&#xff01;&#xff01;很快&#xff0c;2019 也要远去了&#xff01;&#xff01;&#xff01;被各种裁员和寒冬扎心的老铁&#xff0c;你还在犹豫什么&#xff1f;赶紧学习起来&#xff0c;找份靠谱的工作吧&#xff01;找工作这件事&…

网易考拉在服务化改造方面的实践

导读&#xff1a; 网易考拉&#xff08;以下简称考拉&#xff09;是网易旗下以跨境业务为主的综合型电商&#xff0c;自2015年1月9日上线公测后&#xff0c;业务保持了高速增长&#xff0c;这背后离不开其技术团队的支撑。微服务化是电商IT架构演化的必然趋势&#xff0c;网易…

Oracle 11g Java驱动包ojdbc6.jar安装到maven库,并查看jar具体版本号

ojdbc6.jar下载 Oracle官方宣布的Oracle数据库11g的驱动jar包是ojdbc6.jar ojdbc6.jar下载地址&#xff1a;https://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html (Oracle Database 11g Release 2 (11.2.0.4) JDBC Drivers & UCP Do…

java 异常补偿解决_第三方接口调用异常补偿机制实现实例记录

背景&#xff1a;我们的组件(简称A)&#xff0c;在业务链中属于数据支撑节点。其中与组件B存在接口同步数据的直接关系(API接口直接调用进行数据交互)问题&#xff1a;我们的上游有另一个组件C(带有界面)&#xff0c;调用A(us)进行数据的变更操作&#xff0c;此时需要A调用B服务…

阿里重磅开源Blink:为什么我们等了这么久?

12月20日&#xff0c;由阿里巴巴承办的 Flink Forward China 峰会在北京国家会议中心召开&#xff0c;来自阿里、华为、腾讯、美团点评、滴滴、字节跳动等公司的技术专家与参会者分享了各公司基于 Flink 的应用和实践经验。 感兴趣的开发者可以看云栖社区的对于大会的主会5场分…

支持OpenStack,红帽将开源进行到底

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 刘丹责编 | 阿秃出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;早在去年&#xff0c;红帽全球副总裁兼中国区总裁曹衡康表示&#xff0c;红帽已经转型了&#xff0c;不仅是Linux&#xff0c;红帽是全球最…

GAN是一种特殊的损失函数?

数据科学家Jeremy Howard在fast.ai的《生成对抗网络&#xff08;GAN&#xff09;》课程中曾经讲过这样一句话&#xff1a; “从本质上来说&#xff0c;生成对抗网络&#xff08;GAN&#xff09;是一种特殊的损失函数。” 你是否能够理解这句话的意思&#xff1f;读完本文&…

matlab 三维 作图 坐标轴_这张图(不全),想利用matlab画一张三维图,X Y z 轴分别为经度 纬度 频率,这...

xrangeminx:dx:maxx; yrangeminy:dy:maxy;[X,Y] meshgrid(xrange,yrange);griddata(lon,lat,SST,X,Y);mesh(X,Y,Z), hold onplot3(lon,lat,SST,o),hold offmatlab 作图方法2113&#xff1a;plot3 三维曲线图&#xff1b;plot3(x1,y1,z1,x2,y2,z2,…,xn,yn,zn): surf(x,y,z)…