Mybatis 分页查询(实战版)
Mybatis 分页查询
提示:本次基于springboot2.4.1,SQL limit实现的
文章目录
- Mybatis 分页查询
- 前言
- 例如:使用sqL LIMIT 实现条件查询
- 一、建立实体类(使用了lombok)
- 二、Controller层
- 三、service层及serviceImpl层
- 四、 mapper 及mapper.xml
- 五、测试(swagger 2测试)测试成功
- 总结
前言
例如:使用sqL LIMIT 实现条件查询
提示:以下是本篇文章正文内容,下面案例可供参考
一、建立实体类(使用了lombok)
示例:MajorNumber.java //自己可以根据字段建立数据表
@Data
public class MajorNumber implements Serializable {@ApiModelProperty(value = "id")private Integer id;private Integer aiteMajorSoftware;private Integer aiteMajorCsot;private Integer aiteMajorIt;private Integer aiteMajorAi;private Integer sort;@JsonFormat(pattern = "yyyy-MM-dd")private Date aiteCreated;@JsonFormat(pattern = "yyyy-MM-dd")private Date aiteModified;@TableLogic //逻辑删除private Integer isDeleted;}
二、Controller层
代码如下(示例):Result 是统一结果返回类 @Api 用的是swagger2;
请求是post
@Api(tags = "工作室数据统计接口")
@CrossOrigin
@RestController
@RequestMapping("/MemberNumberController")
public class MemberNumberController {@Autowiredprivate MajorNumberService majorNumberService;//查询分页@ApiOperation("查询分页")@PostMapping("findPage/{currPage}/{pageSize}")public Result findPage (@PathVariable int currPage,@PathVariable int pageSize){List<MajorNumber> majorNumbers = majorNumberService.queryMajorBySql(currPage,pageSize);return Result.ok(majorNumbers);}}
三、service层及serviceImpl层
代码如下(示例):
/*** Created with IntelliJ IDEA.** @Author: zhangliang* @Date: 2022/11/08/11:54* @Description: 专业数据*/
@Transactional
public interface MajorNumberService extends IService<MajorNumber> {List<MajorNumber> queryMajorBySql(int currPage, int pageSize);
}
@Service
public class MajorNumberServiceImpl extends ServiceImpl<MajorNumberMapper,MajorNumber> implements MajorNumberService {@Autowiredprivate MajorNumberMapper majorNumberMapper;@Overridepublic List<MajorNumber> queryMajorBySql(int currPage, int pageSize) {Map<String, Object> data = new HashMap<>();data.put("currIndex", (currPage-1)*pageSize);data.put("pageSize", pageSize);return majorNumberMapper.queryMajorBySql(data);}
}
四、 mapper 及mapper.xml
public interface MajorNumberMapper extends BaseMapper<MajorNumber>{List<MajorNumber> queryMajorBySql(Map<String, Object> data);}
<?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="space.aite.aitestudio_zll.mapper.MajorNumberMapper"><resultMap id="MajorNumber" type="space.aite.aitestudio_zll.entity.MajorNumber"><id property="id" column="id"/><!-- <result property="实体类属性" column="数据表字段名"/> --><result property="id" column="id"/><result property="aiteMajorSoftware" column="aiteMajorSoftware"/><result property="aiteMajorCsot" column="aiteMajorCsot"/><result property="aiteMajorIt" column="aiteMajorIt"/><result property="aiteMajorAi" column="aiteMajorAi"/><result property="sort" column="sort"/><result property="aiteCreated" column="aiteCreated"/><result property="aiteModified" column="aiteModified"/><result property="isDeleted" column="isDeleted"/></resultMap><select id="queryMajorBySql" resultType="space.aite.aitestudio_zll.entity.MajorNumber" resultMap="MajorNumber">select *
# id,aiteMajorSoftware,aiteMajorCsot,aiteMajorItfrom aite_studio.aite_MajorNumber limit #{currIndex} , #{pageSize};</select>
</mapper>
五、测试(swagger 2测试)测试成功
总结
用时1h (现写加上写博客),好久没这样写了,这是在mybatis-plus 条件下实现的sql 查询分页,自己也对spring 加深了理解,分享给其他同学一起学习。
Mybatis 分页查询(实战版)相关推荐
- MYBATIS分页查询代码优化
项目场景: mybatis分页查询的时候,需要联动其他系统,把每条数据的用户信息查询出来,用户量很多的时候,出现一次查询需要十几秒的情况. 问题描述 查询出的数据,其实除了当前页的数据,其他的实际上并 ...
- 【问题解决】MyBatis分页查询SQL Server2008时出现'@P0' 附近有语法错误
MyBatis分页查询SQL Server2008时出现'@P0' 附近有语法错误" Error querying database. Cause: com.microsoft.sqlser ...
- mybatis 分页查询_MyBatis之分页查询:MyBatis PageHelper
MyBatis,作为目前流行的ORM框架,大大方便了日常开发.而对于分页查询,虽然可以通过SQL的limit语句实现,但是比较繁琐.而MyBatis PageHelper的出现,则解决了这一痛点.这里 ...
- java mybatis分页查询语句_mybatis分页查询的实现(一)
一.总结了mybatis中五种不同实现分页查询的方法 UserMapper.java接口文件 public interface UserMapper { //分页查询 public List sele ...
- Spring Boot实现MyBatis分页查询
综合概述 想必大家都有过这样的体验,在使用Mybatis时,最头痛的就是写分页了,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真的不想花双倍 ...
- 【mybatis】在mybatis分页查询时,主表对关联表 一对多 分页查询怎么实现
现在有这样一个需求: 1.积分商品分页查询 2.一个积分商品会有多张商品图片在商品图片表 1:n的关系 这样在积分商品分页查询的时候,想要顺便把每个积分商品对应的商品图片信息也带出来 实现如下: 1 ...
- mybatis分页查询插件
1.引入jar包 <dependency><groupId>com.github.pagehelper</groupId><artifactId>pag ...
- Mysql+Mybatis分页查询——数据库系列学习笔记
一.首先做一个查询所有并显示 dao public interface ProductDAO {public List<Product> list(); } mapper <mapp ...
- springboot之mybatis分页查询
首先写一个基础的分类bean插件,由下面两个类组成 package com.my.utils;import com.fasterxml.jackson.annotation.JsonFormat; i ...
最新文章
- 5.1 HTML5表单的创建
- android log system
- Hadoop |集群的搭建
- 【Heritrix基础教程之1】在Eclipse中配置Heritrix
- 推荐系统: 数据、问题与算法
- MT4MT5跟单EA系统跨平台
- 模拟CMOS集成电路放大器总结(1)
- 安卓bochs模拟linux_bochs linux镜像下载|bochs模拟器linux镜像下载 v1.0完整版_星星软件园...
- html embed自动播放,embed嵌入多个优酷视频并自动播放
- android定位4g不准,定位不准/失败的处理方法
- java.lang.UnsupportedOperationException\r\n\tat java.sql.Date.toInstant(Date.java:304)
- 基于Spark的公安大数据实时运维技术实践
- the-craft-of-selfteaching之《自学是门手艺》开源项目书的学习笔记一篇
- Float浮动与清除浮动
- 2006(首届)Web2.0十大创新品牌
- 2022最新u盘升级重装win10方法
- 什么叫死区时间_死区时间
- re的剩余模块和subprocess模块
- 解决mysql 服务无法启动问题:Can't find messagefile 'D:\	ools\mysql-5.6.25-winx64\share\errmsg.sys'...
- 【无人驾驶 | 国内篇】主要玩家介绍
热门文章
- 基于html5的矢量图绘制方法研究,HTML5程序设计-绘制可伸缩矢量图形SVG.pdf
- css样式高居中,CSS居中的几种方式
- google翻译 中文文本大量翻译成英文
- ThinkBook15电脑开机后马上蓝屏不能使用怎么办?
- 用计算机做路由器,电脑当无线路由器怎么用 电脑当无线路由器详细教程【图文】...
- smb android 客户端,谷歌放出安卓版Samba客户端 但仅支持SMBv1
- matlab将多张tif文件合成为一张tif
- activiti绘制流程图,线上显示文字,审批过的节点添加审批人的名字
- 戴尔服务器的型号1950,DELL PowerEdge 1950
- C++ P0002 旅行计划