Spring Data JPA 条件查询 分页查询
条件查询
//Label : 实体类,传过来的参数
labelDao.findAll(new Specification<Label>(){@Overridepublic Predicate toPredicate(Root<Label) root,CriteriaQuery<?> query,CriteriaBuilder cb){//new一个list集合,来存放所有的条件List<Predicate> list = new ArrayList<>();if(label.getname() != null && !"".equals(label.getname())){//条件若是模糊查询 Predicate predicate = cb.like(root.get("name").as(String.class),"%"+label.getname()+"%");//where name like "%小%"list.add(predicate);}if(){//若不是模糊查询 ,则把上面的%%去掉 list.add();}//new一个数组作为最终返回值的条件Predicate[] parr = new Predicate[list.size()];//把list直接转成数组parr = list.toArray(parr);return cb.add(parr);// where name like "%小%" //多个条件下 and}
});
分页查询
public Page<Label> pageQuery(Label label, int page,int size){//封装分页对象Pageable pageable = PageRequest.of(page-1,size);return labelDao.findAll(new Specification<Label>(){//root :根对象,也就是要把条件封装到哪个对象中, where 类名 = label.getid//quert : 封装的都是查询关键字,比如 group by ,order by 等//cb : 用来封装条件对象的,如果直接返回null,表示不需要任何条件@Overridepublic Predicate toPredicate(Root<Label) root,CriteriaQuery<?> query,CriteriaBuilder cb){//new一个list集合,来存放所有的条件List<Predicate> list = new ArrayList<>();if(label.getname() != null && !"".equals(label.getname())){//条件若是模糊查询 Predicate predicate = cb.like(root.get("name").as(String.class),"%"+label.getname()+"%");//where name like "%小%"list.add(predicate);}if(){//若不是模糊查询 ,则把上面的%%去掉 list.add();}//new一个数组作为最终返回值的条件Predicate[] parr = new Predicate[list.size()];//把list直接转成数组parr = list.toArray(parr);return cb.add(parr);// where name like "%小%" //多个条件下 and} },pageable);
}
Spring Data JPA 条件查询 分页查询相关推荐
- Spring data jpa 条件查询-按时间段查询
Spring data jpa 条件查询-按时间段查询 @Overridepublic Page<泛型> findRecordList(int couponDetailId, int pa ...
- Spring Data JPA 多表关联查询的实现
Spring Data JPA 多表关联查询的实现 多表查询在spring data jpa中有两种实现方式,第一种是利用hibernate的级联查询来实现,第二种是创建一个结果集的接口来接收连表查询 ...
- Spring Data JPA 条件查询的关键字
Spring Data JPA 为此提供了一些表达条件查询的关键字,大致如下: And --- 等价于 SQL 中的 and 关键字,比如 findByUsernameAndPassword(Stri ...
- ORM框架之Spring Data JPA(三)高级查询---复杂查询
一.spring data jpa高级查询 1.1Specifications动态查询 有时我们在查询某个实体的时候,给定的条件是不固定的,这时就需要动态构建相应的查询语句,在Spring Data ...
- Spring Data JPA根据属性名查询
https://blog.csdn.net/chengqiuming/article/details/82528961
- Spring Data JPA和分页
让我们从支持分页的经典JPA方法开始. 考虑一个简单的域类–一个具有名字,姓氏的"成员". 为了支持在成员列表上进行分页,JPA方法是支持一种查找器,该查找器将获取第一个结果(fi ...
- Spring Data JPA
1. 概述 Spring JPA通过为用户统一创建和销毁EntityManager,进行事务管理,简化JPA的配置等使用户的开发更加简便. Spring Data JPA是在Spring JPA ...
- spring data jpa是什么?
spring data jpa是什么? 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/jewelry008/article/details/7635 ...
- Spring Data JPA入门
见:http://sishuok.com/forum/blogPost/list/7000.html Spring Data是什么 Spring Data是一个用于简化数据库访问,并支持云服务的开源框 ...
最新文章
- js跟随鼠标移动的写法
- mybatis注解详解
- Oracle编程入门经典 第9章 掌握SQL*Plus
- iBeacon的数据包格式
- 全志 添加PWM7参数
- 生活感悟——和尾号990的滴滴师傅的聊天
- 素数倒数的级数发散性的一个证明
- ubuntu 搜索推荐安装的NVIDIA驱动版本
- 黑苹果系统是服务器系统,黑苹果各种版本的说明 _ 黑苹果乐园
- MaxDEA如何计算DEA-Malmquist指数
- mysql 基数_MySQL 索引基数
- C++从键盘输入的方法
- 写给大学时期自己的寄语
- IDC最新发布全屋智能将成为智能家居增长的重要动力,华为战略升级
- 计算机考研面试常见英语提问及专业课
- 跨境电商ERP中的自动化 5.平台订单自动打印面单
- 移动端嵌入式pdf展示
- 榆木搜官网_网路已为您准备好,榆木
- 详解 YUV,一文搞定 YUV 是什么!
- SQLITE高速插入数据
热门文章
- spring cloud微服务分布式云架构-Spring Cloud 分布式的五大重点
- 测试对等网络的连通性
- 『力荐汇总』这些 VS Code 快捷键太好用,忍不住录了这34张gif动图
- 安卓nfs网络文件服务器,Linux网络文件服务器 NFS
- 从零开始学ios开发(十四):Navigation Controllers and Table Views(上)
- Web Components 系列(十)—— 实现 MyCard 的基本布局
- tnsname.ora 个参数解释
- PyQt5学习--基本窗口控件--QButton类控件
- 向园子里的朋友探讨一个问题:如果判定一个对象已被处置
- 2018-12-28