spring data jpa 的 in 查询 Specification 实现

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

只是一个简单需求:  查询所有部门id 属于  idList 的数据

 Page<WorkWeight> page = workWeightRepository.findAll(new Specification<WorkWeight>() {@Overridepublic Predicate toPredicate(Root<WorkWeight> root, CriteriaQuery<?> query, CriteriaBuilder cb) {List<Predicate> list = new ArrayList<>();if(null != subDepartmentId && !"".equals("subDepartmentId")){list.add(cb.equal(root.<String>get("subDepartmentId"), subDepartmentId));}if(null != status && !"".equals("status")){list.add(cb.equal(root.<String>get("status"), status));}if (null != startTime && !"".equals("startTime")) {list.add(cb.greaterThanOrEqualTo(root.<Date>get("startTime"), DateUtil.stringToDate(startTime)));}if (null != endTime && !"".equals("endTime")) {list.add(cb.lessThanOrEqualTo(root.<Date>get("endTime"), DateUtil.stringToDate(endTime)));}Expression<String> exp = root.<String>get("departmentId");list.add(exp.in(idList)); // 往in中添加所有id 实现in 查询if (list.size() != 0) {Predicate[] p = new Predicate[list.size()];return cb.and(list.toArray(p));} else {return null;}}}, new PageRequest(pageable.getPageNumber(), pageable.getPageSize(), pageable.getSort()));

重点代码:

 

 

  Expression<String> exp = root.<String>get("departmentId");list.add(exp.in(idList)); // idList是部门id集合, 实现in 查询

 

 

 

 

 

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

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

相关文章

在移动互联网上赚钱,行不行

移动互联网已被证实是互联网产业发展的大趋势。不过&#xff0c;究竟如何赚钱&#xff0c;对海外企业与中国企业来说都是难题。本月初&#xff0c;几位业界大佬与风投来了一番讨论&#xff0c;议题还是一个“在移动互联网上赚钱&#xff0c;行还是不行”。 百度试图通过用户习惯…

计算机网络知识简单介绍

一、网络基础 1.网络指的是什么&#xff1f; 计算机与计算机之间通过物理链接介质&#xff08;网络设备&#xff09;连接到一起。 计算机与计算机之间基于网络协议通信&#xff08;网络协议就相当于计算机界的英语&#xff09; 2.osi七层协议&#xff1a; 互联网协议按照功能不…

Linux下安装FFmpeg

FFmpeg官网&#xff1a;http://www.ffmpeg.org 官网介绍 FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure…

HTTP协议状态码详解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 状态码含义100客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收&#xff0c;且仍未被拒绝。客户端应…

【Python web 开发】viewset 实现商品详情页的接口

我们如何来完成商品详情页的接口呢&#xff1f; 首先要配置一个商品详情的url 按照我们正常的接口配法 &#xff0c;应该是后面要加一个id 的&#xff0c;为什么这里没有加id 呢? ,应该是rooter register 的作用吧&#xff0c;等我在学习一遍基础再来回答&#xff1f; 那么我…

Ignite中的机器学习介绍

为什么80%的码农都做不了架构师&#xff1f;>>> 本系列共6篇文章&#xff0c;会通过一些代码示例&#xff0c;讲解如何在Ignite中使用机器学习库&#xff0c;本文是本系列的第一篇。 从Ignite的2.4版本开始&#xff0c;机器学习就可以用于生产环境了。在这个版本中…

4G发牌或提早 电信联通面临艰难抉择

曾几何时遥不可及的4G&#xff0c;上马的时间可能要比预期来的要早。今年3月&#xff0c;工信部部长苗圩表示&#xff0c;预计国内需要2-3年才会发放4G牌照。话音犹在耳&#xff0c;苗圩部长9月11日表示&#xff0c;“工信部已决定将于一年左右的时间发放TD-LTE牌照”。 工信部…

mysql 的 sql 执行计划详解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 引言&#xff1a; 实际项目开发中&#xff0c;由于我们不知道实际查询的时候数据库里发生了什么事情&#xff0c;数据库软件是怎样扫描…

2018-10-28

我的博客即将入驻“云栖社区”&#xff0c;诚邀技术同仁一同入驻。

win10+vscode部署java开发环境

目录 Java开发插件配置&#xff1a;调试&#xff1a;快捷键&#xff1a;启动配置文件launch.json:启动配置说明&#xff1a;Launch:Attach:User Setting:遇到的问题&#xff1a;参考&#xff1a;Java开发插件配置&#xff1a; Microsoft有个官方的插件Java Extension Pack&…

类的带参方法有哪几部分构成?

类的带参方法有哪几部分构成&#xff1f; 发布于2015-11-08 12:27 main函数可以不带参数,也可以带参数&#xff0c;这个参数可以认为是 main函数的形式参数。C语言规定main函数的参数只能有两个&#xff0c;还规定argc(第一个形参)必须是整型变量,argv( 第二个形参)必须是指向字…

新架构让数据中心犹如PC

摘要&#xff1a;随着VL2网络拓扑结构带来了对等带宽&#xff0c;大量数据可以存放在远方的数据中心&#xff0c;访问起来却犹如它们就在本地&#xff0c;这将对数据中心的架构产生重大影响。Todd Hoff参加了Hot Interconnects大会&#xff0c;对微软VL2架构做了详细解读。CSDN…

mongodb分片概念和原理-实战分片集群

一、分片分片是一种跨多台机器分发数据的方法。MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作的部署。问题&#xff1a;具有大型数据集或高吞吐量应用程序的数据库系统可能会挑战单个服务器的容量。例如&#xff0c;高查询率会耗尽服务器的CPU容量。工作集大小大于系…

字符串的一些用法

一.Java字符串类基本概念在JAVA语言中&#xff0c;字符串数据实际上由String类所实现的。Java字符串类分为两类&#xff1a;一类是在程序中不会被改变长度的不变字符串&#xff1b;二类是在程序中会被改变长度的可变字符串。Java环境为了存储和维护这两类字符串提供了 String和…

获取BGR颜色的HSV值

import cv2import numpy as npgreen np.uint8([[[152, 245, 255]]]) # 输入待转换颜色的BGR值hsv_green cv2.cvtColor(green, cv2.COLOR_BGR2HSV)print(hsv_green)转载于:https://www.cnblogs.com/LicwStack/p/10129505.html

HTTP 协议是无状态协议,怎么理解

HTTP 是一个属于应用层的面向对象的协议&#xff0c;HTTP 协议一共有五大特点&#xff1a;1、支持客户/服务器模式&#xff1b;2、简单快速&#xff1b;3、灵活&#xff1b;4、无连接&#xff1b;5、无状态。 无连接 无连接的含义是限制每次连接只处理一个请求。服务器处理完客…

加入初创企业需要想清楚的几个问题

摘要&#xff1a;加入一家初创企业是一段充满冒险的旅程。沿途不会都是美景&#xff0c;更别忘了最初的梦想。 去初创公司面试&#xff0c;你一般会纠结于被问到什么问题。但更重要的是问自己&#xff1a;你下定决心在接下来的5年中“从头再来”吗&#xff1f;你能接受这份薪资…

类和对象的区别

类和对象的区别1&#xff0c;类是一个抽象的概念&#xff0c;它不存在于现实中的时间/空间里&#xff0c;类只是为所有的对象定义了抽象的属性与行为。就好像“Person&#xff08;人&#xff09;”这个类&#xff0c;它虽然可以包含很多个体&#xff0c;但它本身不存在于现实世…

IIS服务器SSL证书安装

在证书控制台下载IIS版本证书&#xff0c;下载到本地的是一个压缩文件&#xff0c;解压后里面包含.pfx文件是证书文件&#xff0c;pfx_password.txt是证书文件的密码。 友情提示&#xff1a; 每次下载都会产生新密码&#xff0c;该密码仅匹配本次下载的证书。如果需要更新证书文…

attempting to use incompatible return type 提示 解决

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一、问题&#xff1a;方法返回类型上有红线&#xff0c;提示信息&#xff1a;... attempting to use incompatible return type 要返回…