使用springboot jpa完成复杂的分页查询
使用springboot jpa完成复杂的分页查询
贴上数据表
贴上实体类
package com.imooc.mmal.pojo;import lombok.Data;import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.io.Serializable;
import java.time.LocalDate;/*** (MallProduct)实体类** @author bin.zong* @since 2020-09-04 11:31:18*/
@Entity(name = "mall_product")
@Data
public class MallProduct implements Serializable {private static final long serialVersionUID = 666816867179765417L;/*** 商品id*/@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Integer id;/*** 分类id,对应mall_category表的主键*/private Integer categoryId;/*** 商品名称*/private String name;/*** 商品副标题*/private String subtitle;/*** 产品主图,url相对地址*/private String mainImage;/*** 图片地址,json格式,扩展用*/private String subImages;/*** 商品详情*/private String detail;/*** 价格,单位-元保留两位小数*/private Double price;/*** 库存数量*/private Integer stock;/*** 商品状态.1-在售 2-下架 3-删除*/private Integer status;/*** 创建时间*/private LocalDate createTime;/*** 更新时间*/private LocalDate updateTime;}
分页的时候要判断state等于1进行展示 在这里我并不想写sql语句,所以可以使用Example对象来帮住我们完成
首先创建Sort对象进行排序
之后将Sort对象扔到Page对象
在创建Example对象 创建实体类对象
贴上代码
MallProduct product=new MallProduct();product.setStatus(MallProductEnum.IN_STOCK.getCode());Sort sort = new Sort(Sort.Direction.DESC, "id");Pageable pageable = PageRequest.of(pageNum, pageSize, sort);Example<MallProduct> example=Example.of(product);List<MallProduct> content = mallProductDao.findAll(example, pageable).getContent();log.info("content",content);
查看一下控制台日志
Hibernate: select mallproduc0_.id as id1_4_, mallproduc0_.category_id as category2_4_, mallproduc0_.create_time as create_t3_4_, mallproduc0_.detail as detail4_4_, mallproduc0_.main_image as main_ima5_4_, mallproduc0_.name as name6_4_, mallproduc0_.price as price7_4_, mallproduc0_.status as status8_4_, mallproduc0_.stock as stock9_4_, mallproduc0_.sub_images as sub_ima10_4_, mallproduc0_.subtitle as subtitl11_4_, mallproduc0_.update_time as update_12_4_ from mall_product mallproduc0_ where mallproduc0_.status=1 order by mallproduc0_.id desc limit ?, ?
Hibernate: select count(mallproduc0_.id) as col_0_0_ from mall_product mallproduc0_ where mallproduc0_.status=1
查看一下结果
使用springboot jpa完成复杂的分页查询相关推荐
- 解决Springboot+JPA中多表关联查询会查询多次的问题(n+1查询问题)
解决Springboot+JPA中多表关联查询会查询多次的问题(n+1查询问题) 参考文章: (1)解决Springboot+JPA中多表关联查询会查询多次的问题(n+1查询问题) (2)https: ...
- SpringBoot+Mybatis+Elasticsearch 实现模糊分页查询并标记关键字
SpringBoot 整合 Elasticsearch 实现模糊分页查询并标记关键字 一.概述 & 介绍 Elasticsearch 是基于 Lucense 技术的搜索引擎(服务器),将数据进 ...
- SpringBoot JPA(JpaRepository)动态查询 分页展示
大家知道Hibernate可以很轻松的根据提供条件进行动态筛选查询,那个JPA怎么实现呢,其中最为简单的就是使用Specification实现JPA的动态查询,本人也是初步接触JPA,第一次使用JPA ...
- SpringBoot-07:SpringBoot整合PageHelper做多条件分页查询
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客讲述如何在SpringBoot中整合PageHelper,如何实现带多个条件,以及PageInfo中的 ...
- jpa之PagingAndSortingRepository带分页查询
1.1. Dao接口继承PagingAndSortingRepository接口 PersonDao.java package com.morris.dao.inter;import org.spr ...
- Springboot Mybatis使用PageHelper实现分页查询
以下介绍实战中数据库框架使用的是mybatis,对整合mybatis此处不做介绍. 使用pageHelper实现分页查询其实非常简单,共两步: 一.导入依赖: pom.xml添加依赖: <!-- ...
- SpringBoot 整合【Mybatis-Plus实现分页查询】
目录 1. 添加pom.xml依赖 2. 配置application.yml文件 3. mybatis-plus插件配置核心类 4. 启动类配置 5. 测试数据Sql脚本 6. mybatis-plu ...
- Springboot Mybatis使用pageHelper实现分页查询
以下介绍实战中数据库框架使用的是mybatis,对整合mybatis此处不做介绍. 使用pageHelper实现分页查询其实非常简单,共两步: 一.导入依赖: 二.添加配置: 那么开始, 第一步: p ...
- springboot+thymeleaf+pageHelper带条件分页查询
html层 <div><a class="num"><b th:text="'共 '+ ${result.resultMap['pages' ...
- Spring Data Jpa多表联合分页查询
参考:https://blog.csdn.net/qq_36144258/article/details/80298354 近期一个项目用到Spring Data Jpa,Jpa用来做单表查询非常的简 ...
最新文章
- 使用git提交到github,每次都要输入用户名和密码的解决方法
- 学python需要哪些基础-python 学习,需要有哪些基础呢?
- Shell 环境中的预定义变量
- 十问十答 GPL 许可证
- access无法与wincc链接_wincc和Access连接写如变量
- 机电传动控制第一周学习笔记
- 键盘上的反引号怎么打
- 【Flink】Flink 1.9 升级 到 flink 1.12.4 报错 shaded netty4 AbstractChannel AnnotatedConnectException
- oracle改表结构非空字段类型,oracle 表结构的非完全复制
- Eclipse注释快捷键、如何生成API以及可能遇到的问题解决
- 加一条平行于y轴的直线_Hepco海普克应用案例—直线V型滚轮导轨广泛应用于多轴机械手...
- 如意淘商品推荐技术介绍之二:高级技术
- 汽车之家和易车该如何走下去?
- 电脑托文件到服务器,本地电脑文件拖入云服务器
- 评委打分表模板_系高中英语作文模板——邀请信
- linux tux_与Tux,BSD等一起庆祝国家超级英雄日
- 微信小程序添加(成功失败)提示音
- 抛硬币直到连续2次正面的概率
- Unity3D蓝牙连接Mi Band 5手环获取实时心率
- arcgis for android(六)定位
热门文章
- 场外模拟 省选联考(B卷) 2020 游记
- css表格文字超数量就竖排_CSS奇特技巧:控制文字竖排
- 【只推荐一位】木东居士,带着大家一起成长的数据科学大神!
- 软件测试人员,究竟怎么霸气过七夕?!大神攻略请笑纳!
- 三国志2017攻略 服务器维护,三国志2017新手攻略少走弯路
- 解码jpg图片c语言,图像解码之一——使用libjpeg解码jpeg图片
- P5144 蜈蚣 (线性DP)
- Show, Control and Tell: A Framework for Generating Controllable and Grounded Captions
- 【※taskmgr.exe进程知识详解※电脑知识】
- Prumo、bp和西门子与SPIC就巴西能源项目达成合作伙伴关系