jpa框架让大家快速实现增删查改,真是太方便了。但是针对以下这个场景大家需要注意一下,我们项目中真实用到的,记录下来分享给大家。
Account 和AccountDetail 是一对多关系,正常针对Account 或者AccountDetail实现分页查询,数据库中AccountDetail对应的表也会记录所属Account的主键,字段名称是AccountId,但如果分页查询Account 的时候,查询条件中有Account Detail的信息,如何实现呢?

第一步:在Account 实体中增加一对多的关系

 @OneToMany    //主表中有一对多的关系@JoinColumn(name="accountId")//一的一方在多的一方的字段名称private List<AccountOrderDetail> accountOrderDetailList;

第二步:在拼接查询部分增加判断逻辑

if(!StringUtils.isEmpty(query.getWorkOrderCode())){last = last.and(QAccountOrder.accountOrder.accountOrderDetailList.any().workOrderCode.eq(query.getWorkOrderCode()));}

注意:QAccountOrder 这个class不是自己写的,是引入jpa后,控制台上输入mvn clean install 命令后,后台自动生成的。所以每次修改AccountOrder后,如果QAccountOrder 中可能找不到对应的参数,需要重新编译一下即可。

Spring data JPA -针对一对多关系中,分页查询一的一方部分,但查询条件中有多的一方参数相关推荐

  1. 【Spring Data JPA自学笔记五】一对多、多对多和级联

    文章目录 数据库表的关系 一对多 多对多 Spring Data JPA实现一对多 基本配置 实现一对多 放弃维护权 Spring Data JPA实现多对多 基本配置 实现多对多 级联 之前的所有操 ...

  2. Spring Data JPA教程:获取所需的依赖关系

    在创建使用Spring Data JPA的应用程序之前,我们需要获取所需的依赖关系. 这篇博客文章标识了必需的组件,并描述了如何使用Maven获得它们. 让我们开始吧. 其他阅读:如果您不熟悉Spri ...

  3. SpringBoot学习笔记:Spring Data Jpa的使用

    更多请关注公众号 Spring Data Jpa 简介 JPA JPA(Java Persistence API)意即Java持久化API,是Sun官方在JDK5.0后提出的Java持久化规范(JSR ...

  4. hql实例 jpa_SpringBoot学习笔记九:Spring Data Jpa的使用

    Spring Data Jpa 简介 JPA JPA(Java Persistence API)意即Java持久化API,是Sun官方在JDK5.0后提出的Java持久化规范(JSR 338,这些接口 ...

  5. Spring Data JPA 原理与实战第二天 掌握Repoitory和DQM

    02 Spring Data Common 之 Repoitory 如何全面掌握? 通过上一课时,我们知道了 Spring Data 对整个数据操作做了很好的封装,其中 Spring Data Com ...

  6. 【SpringBoot框架篇】11.Spring Data Jpa实战

    文章目录 1.简介 1.1.JPA 1.2.Spring Data Jpa 1.3.Hibernate 1.4.Jpa.Spring Data Jpa.Hibernate三者之间的关系 2.引入依赖 ...

  7. Spring Data JPA OneToMany级联,多方删除修改新增详解(好文章!!申精!!)

    前言 近期的项目中使用Spring Data JPA.JPA带来很大的便捷,但它内部映射关系及持久化机制如果理解不到位会出现很多问题.不同的配置将会产生不同的执行过程.如果不了解其运行机制,很容易在一 ...

  8. Spring Boot(五):spring data jpa的使用

    Spring Boot(五):spring data jpa的使用 一.spring data jpa介绍 1,JPA是什么 JPA(Java Persistence API)是Sun官方提出的Jav ...

  9. spring-boot (三) spring data jpa

    学习文章来自:http://www.ityouknow.com/spring-boot.html spring data jpa介绍 首先了解JPA是什么? JPA(Java Persistence ...

最新文章

  1. linux keepalived 脚本,Linux下 keepalived 的安装和配置
  2. php mpdf html 转pdf,使用 MPDF 将HTML转为PDF,然后将该PDF转为PNG图片的时候,中文报错... ...汗血宝马...
  3. 10 大方法,让您的客服中心提供更出色的服务
  4. 运行报错 Permission denied: user=Admin, access=WRITE, inode=/:root:supergroup:drwxr-xr-x
  5. 加密封装 怎么把_不要再封装各种Util工具类了,这个神级框架值得拥有!
  6. c linux 判断ip合法_shell 检测ip的合法性与检测网络掩码的合法性
  7. js理解 call( ) | apply( ) | caller( ) | callee( )
  8. linux make命令实现,Linux make命令主要参数详解
  9. Spring源码之bean的加载(一)
  10. 如何合并apk和odex文件
  11. Pycharm通过ssh远程连接服务器
  12. 已知 char w; int x; float y; double z;,则表达是 w*x+z-y 结果的类型是
  13. python制作中文词云图_Python3制作中文词云图
  14. hexo+yilia添加背景图片
  15. 求职面试技巧_开始求职的7个技巧
  16. 12306自动抢票软件代码实现
  17. 【机器学习系列】概率图模型第四讲:变量消除法和Belief Propagation算法
  18. 谷歌浏览器崩溃!亲测有效
  19. python爬虫课设-爬取3000条数据并做数据可视化
  20. 基于 FPGA 的飞机大战游戏系统设计

热门文章

  1. 意大利FBA海运主要港口有哪些
  2. JS开发必须知道的常用技巧(持续更新...)
  3. 关于CWRU轴承数据集的分类
  4. 短视频模型Imagen Video:艺术和3D建模大师
  5. 计算日期间隔天数的经典算法解析
  6. ABOV使用UART注意事项
  7. 代shua网真正解密源码分享_附搭建教程
  8. 51单片机四个并行I/O接口
  9. Happy happy Mother's Day!!!
  10. SOA 基础知识简介