Spring data JPA -针对一对多关系中,分页查询一的一方部分,但查询条件中有多的一方参数
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 -针对一对多关系中,分页查询一的一方部分,但查询条件中有多的一方参数相关推荐
- 【Spring Data JPA自学笔记五】一对多、多对多和级联
文章目录 数据库表的关系 一对多 多对多 Spring Data JPA实现一对多 基本配置 实现一对多 放弃维护权 Spring Data JPA实现多对多 基本配置 实现多对多 级联 之前的所有操 ...
- Spring Data JPA教程:获取所需的依赖关系
在创建使用Spring Data JPA的应用程序之前,我们需要获取所需的依赖关系. 这篇博客文章标识了必需的组件,并描述了如何使用Maven获得它们. 让我们开始吧. 其他阅读:如果您不熟悉Spri ...
- SpringBoot学习笔记:Spring Data Jpa的使用
更多请关注公众号 Spring Data Jpa 简介 JPA JPA(Java Persistence API)意即Java持久化API,是Sun官方在JDK5.0后提出的Java持久化规范(JSR ...
- hql实例 jpa_SpringBoot学习笔记九:Spring Data Jpa的使用
Spring Data Jpa 简介 JPA JPA(Java Persistence API)意即Java持久化API,是Sun官方在JDK5.0后提出的Java持久化规范(JSR 338,这些接口 ...
- Spring Data JPA 原理与实战第二天 掌握Repoitory和DQM
02 Spring Data Common 之 Repoitory 如何全面掌握? 通过上一课时,我们知道了 Spring Data 对整个数据操作做了很好的封装,其中 Spring Data Com ...
- 【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.引入依赖 ...
- Spring Data JPA OneToMany级联,多方删除修改新增详解(好文章!!申精!!)
前言 近期的项目中使用Spring Data JPA.JPA带来很大的便捷,但它内部映射关系及持久化机制如果理解不到位会出现很多问题.不同的配置将会产生不同的执行过程.如果不了解其运行机制,很容易在一 ...
- Spring Boot(五):spring data jpa的使用
Spring Boot(五):spring data jpa的使用 一.spring data jpa介绍 1,JPA是什么 JPA(Java Persistence API)是Sun官方提出的Jav ...
- spring-boot (三) spring data jpa
学习文章来自:http://www.ityouknow.com/spring-boot.html spring data jpa介绍 首先了解JPA是什么? JPA(Java Persistence ...
最新文章
- linux keepalived 脚本,Linux下 keepalived 的安装和配置
- php mpdf html 转pdf,使用 MPDF 将HTML转为PDF,然后将该PDF转为PNG图片的时候,中文报错... ...汗血宝马...
- 10 大方法,让您的客服中心提供更出色的服务
- 运行报错 Permission denied: user=Admin, access=WRITE, inode=/:root:supergroup:drwxr-xr-x
- 加密封装 怎么把_不要再封装各种Util工具类了,这个神级框架值得拥有!
- c linux 判断ip合法_shell 检测ip的合法性与检测网络掩码的合法性
- js理解 call( ) | apply( ) | caller( ) | callee( )
- linux make命令实现,Linux make命令主要参数详解
- Spring源码之bean的加载(一)
- 如何合并apk和odex文件
- Pycharm通过ssh远程连接服务器
- 已知 char w; int x; float y; double z;,则表达是 w*x+z-y 结果的类型是
- python制作中文词云图_Python3制作中文词云图
- hexo+yilia添加背景图片
- 求职面试技巧_开始求职的7个技巧
- 12306自动抢票软件代码实现
- 【机器学习系列】概率图模型第四讲:变量消除法和Belief Propagation算法
- 谷歌浏览器崩溃!亲测有效
- python爬虫课设-爬取3000条数据并做数据可视化
- 基于 FPGA 的飞机大战游戏系统设计