首页 > 其他分享 >qudsl 使用备忘录

qudsl 使用备忘录

时间:2024-09-23 14:02:03浏览次数:7  
标签:LAZY private 查询 EntityGraph 备忘录 extends 使用 interface qudsl

前提:

已知A表,B表,且 A表一对多B表

查询B表数据的同时,同步关联的A表数据

1. A表的实体类中:

    @OneToMany(mappedBy = "b", fetch = FetchType.LAZY)
    @JsonIgnore
    private Set<B> bs = new HashSet<>();

2. B表的实体类中:

    @QueryInit("*.*.*.*")
    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "关联的字段,例如a_id")
    private A a;

3. 在B表的repository interface中,添加EntityGraph

    @Override
    @EntityGraph(attributePaths = {"a"})
    Page<B> findAll(Predicate predicate, Pageable pageable);

备注:如果在查询过程中,使用了BooleanBuilder,QXXX q = QXXX.xxx;动态构建查询条件,则注意在Repository中,extends QuerydslPredicateExecutor

public interface xxRepository extends JpaRepository<C, String> {
}

public interface xxRepository extends JpaRepository<B, String>, QuerydslPredicateExecutor<B> {

 

标签:LAZY,private,查询,EntityGraph,备忘录,extends,使用,interface,qudsl
From: https://www.cnblogs.com/uoky/p/18426956

相关文章

  • 从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用
    说明  该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。   该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。   说明:OverallAuth2.0是一个简单、易懂、功能强大的权限+可视化流程管理系统。结合上一篇文章使用,味道更......
  • Git安装使用教程,详细到哭
    我们先来理解下Git工作区、暂存区和版本库概念:工作区:就是你在电脑里能看到的目录。暂存区:英文叫stage或index。一般存放在.git目录下的inde一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎徽关注公zhong号:编程进阶路......
  • IDEA的使用,手把手带你快速入门IDEA
    ??新建包及类的方式1.在src内右键选择Package2.在包内右键选择javaClass运行java类的方式创建模块Eclipse和Idea的对比?IDEA的常用配置设置鼠标滚轮修改字体大小修改类头的文档注释信息内容如下:修改字符集?设置自动编译??设置快捷键?首次使用方法======创......
  • 开源MySQL 数据库闪回工具:MyFlash数据恢复工具的安装及使用示例
    MyFlash是一个由美团点评开源的MySQL数据库闪回工具,它专门用于回滚MySQL中的DML操作,如INSERT、UPDATE和DELETE。这个工具通过解析MySQL的binlog文件来实现数据的恢复。使用MyFlash前,需要确保MySQL的binlog格式设置为ROW,并且binlog_row_image设置为FULL。以......
  • MySQL binlog解析工具binlog2sql使用示例
    binlog2sql是一个用于解析MySQL的二进制日志(Binlog)的工具,它可以将Binlog事件转换为SQL语句,这对于审计、数据同步等场景非常有用。binlog2sql通常用于实现MySQL数据的实时同步到其他数据库或系统中。安装binlog2sql首先,你需要安装binlog2sql。如果你使用的是Python环......
  • myflash MySQL数据恢复工具的使用示例:误删除数据恢复和误修改数据恢复两种场景
    以下是myflash数据恢复工具的使用示例,分为误删除数据恢复和误修改数据恢复两种情况:误删除数据恢复:构建测试环境:创建测试数据库和表。假设你已经安装并启动了MySQL服务,登录到MySQL客户端,执行以下语句创建一个名为testdb的数据库和一个名为user的表:sqlCREATEDATABASEtest......
  • MySQL binlog --skip-gtids --include-gtids --exclude-gtids 参数作用及使用示例
    在MySQL中,--skip-gtids选项用于完全跳过全局事务标识符(GTID)的处理,而--include-gtids和--exclude-gtids则是用于选择性地应用或跳过特定的GTID范围内的事务。这些选项通常在MySQL的二进制日志(binlog)消费者工具(如mysqlbinlog)中使用,而不是直接应用于MySQL服务器本身......
  • 【Kubernetes基础】Helm工具入门与使用
    前言Helm是Kubernetes包管理工具,类似CentOS的yum包管理工具学习Kubernetes,了解如何通过Helm安装跟管理Kubernetes应用很有必要,下面就来介绍Helm的入门使用。一、Helm基本管理1.1检查Helm版本helmversionhelmversion二、配置Helm仓库Helm可以通过添加仓库源来使......
  • 任务2 使用Canva的绘图工具
    该海报供小学自然课堂使用,围绕“土壤”这一主题,通过图像、文字和绘画活动来形象阐述土壤的功能。设计思路如下:1.【视觉元素】●土壤层次:展示土壤的不同层次,如表土、底土等,可以用图解的方式表示。●生物多样性:画出土壤中的微生物、昆虫、植物根系等,展示土壤生态系统的多样性。......
  • Vue69 路由的基本使用
    路由理解:一个路由(route)就是一组映射关系(key-value),多个路由需要路由器(router)进行管理。前端路由:key是路径,value是组件。1.基本使用安装vue-router,命令:npmivue-router@3应用插件:Vue.use(VueRouter)编写router配置项://引入VueRouterimportVueRouterfrom'vue-router'//引入L......