创建一个Specification<T> 对象 根据你的条件

private Specification<MemberProductBack> createSpecification(MemberProductBack memberProductBack) {Specification<MemberProductBack> specification = (Root<MemberProductBack> root, CriteriaQuery<?> query, CriteriaBuilder cb) -> {List<Predicate> predicates = new ArrayList<>();if(memberProductBack.getMemberId()!=null){predicates.add(cb.equal(root.get("memberId").as(Long.class), memberProductBack.getMemberId()));}if(memberProductBack.getOrderSn()!=null){predicates.add(cb.equal(root.get("orderSn").as(String.class), memberProductBack.getOrderSn()));}if(memberProductBack.getBackState()!=null){if(memberProductBack.getBackState().contains(",")){String[] split = memberProductBack.getBackState().split(",");CriteriaBuilder.In<Object> in = cb.in(root.get("backState"));for (String s : split) {in.value(s);}predicates.add(in);}else{predicates.add(cb.equal(root.get("backState").as(String.class), memberProductBack.getBackState()));}}if ( !queryLog.isEmpty()) {predicates.add(cb.like(root.get("name1"),"%"+queryLog+"%"));}return cb.and(predicates.toArray(new Predicate[predicates.size()]));};return specification;}

两种常用的 equal 和 in

Specification 对象的常用方法相关推荐

  1. 属性值动态调整_【VBA】Range对象的常用方法属性(三)

    本文继续上一节的Range对象的方法和属性的讲解.上一讲讲到了End属性寻找最后一个已经使用的单元格.这一节继续讲解关于动态找单元格区域方面的属性. Offset 偏移 相信学过OFFSET工作表函数 ...

  2. StringBuilder对象的常用方法 c#1614651638

    StringBuilder对象的常用方法 c#1614651638 演练 using System; using System.Collections.Generic; using System.Li ...

  3. Python入门--文件对象的常用方法,write,read,readline

    #文件对象的常用方法 #方法名 说明 #read([size])-->从文件中读取size个字节或字符的返回内容.若省略[size],则读取到文件末尾 #即读取文件所有内容 #readline( ...

  4. C#与数据库访问技术总结(三)之 Connection对象的常用方法

    说明:前面(一)(二)总结了数据库连接的概念以及连接数据库的字符串中的各个参数的含义.这篇随笔介绍connection对象的常用方法. Connection对象的常用方法 Connection类型的对 ...

  5. Document 对象的常用方法

    1.getElementById(id) 通过元素的ID访问元素,这是DOM一个基础的访问页面元素的方法,我们要经常用到它. 例如下面的例子,我们可以同DIV的ID迅速的访问到它,而不必通过DOM层层 ...

  6. Java基础18-String类【String类的特点对象个数常用方法】【超详细讲解】

    Java基础-String类[超详细讲解] String类的特点 String在java.lang.String包中 1:特点 (1)String类型不能被继承,因为由final修饰 (2)Strin ...

  7. JSP内置对象及常用方法

    Jsp一共定义了9个对象:request.response.session.application.out.pagecontext.config.page.exception 1.request代表 ...

  8. JSP的out内置对象及其常用方法

    JSP全名为Java Server Page,即Java服务器语言,是一种简化的Servlet语言,与ASP相似,用于动态网页的设计,下面我们就简单讲一下JSP的out内置对象以及一些常用的方法,ou ...

  9. request对象的常用方法

    Request对象的作用是与客户端交互,收集客户端的Form.Cookies.超链接,或者收集服务器端的环境变量. request的常用方法有: getParameter(String name)获取 ...

  10. JS三大对象中常用方法集锦

    JavaScript 是使用"对象化编程"的,或者叫"面向对象编程"的.所谓"对象化编程",意思是把 JavaScript 能涉及的范围划分 ...

最新文章

  1. 从地理分类的计算机网格,第2章-地理空间象计算机表达(6-9学时).doc
  2. mysql 虚表_mysql虚拟表
  3. 安装 | Window下Visual Studio VS2015 VS2017 各版本下载地址
  4. python pandas 数据透视表_python – Pandas数据透视表:列顺序和小计
  5. 王道考研 计算机网络8 物理层基本概念 数据通信相关术语
  6. SpringMvc接口中转设计(策略+模板方法)
  7. 【转载】我只是随便说说的即时通讯
  8. Myspace 被曝数据滥用,隐私问题再被诟病!
  9. 帆软JS实现局部刷新CPT
  10. java 中使用_java中运算符的使用方法
  11. 基于RV1126平台imx291分析 --- rkcif_mipi注册
  12. for linux pdf转mobi_linux PDF转换为SWF
  13. java数据流编辑 kylo,kylo问题总结1
  14. 前端晋升答辩-性能优化篇范式
  15. 高级语言程序设计(C语言)----第三章(上) 数据类型、运算符和表达式
  16. idea使用spring框架Exception in thread main java.lang.IllegalStateException错误
  17. IT行业中的互联网领域和软件领域工作方向有什么区别?
  18. OA系统必备的五个基本要素
  19. 百济神州年营收近12亿美元:亏14亿美元 被列入预摘牌名单
  20. [Linux]TaskWarrior(任务管理工具)

热门文章

  1. 【业务安全03】密码找回业务安全
  2. 联通4g满格但是网速慢_4G信号明明满格,但网速却慢过蜗牛,是什么原因?
  3. android 腾讯云聊天,腾讯云视频通话
  4. 5个步骤实现流程管理
  5. 余世维有效沟通全文字!
  6. Android答题系统
  7. 指标异动的贡献度量化归因
  8. python变量贡献率排序_103,每个特征的贡献率是多少?
  9. 远方的人 -- 龙瑜
  10. 产品经理的职责有哪些?到底该做什么?