java - 如何使用 querydsl 获取子字段?
问题描述
如何使用 querydsl 获取子字段?
此变体返回具有所有空字段的人员。
QX x = QX.x;
BooleanBuilder booleanBuilder = new BooleanBuilder(predicate);
booleanBuilder
.and(x.isDeleted.isFalse())
.and(x.isActive.isTrue());
JPAQuery<X> query = new JPAQueryFactory(entityManager)
.select(x)
.from(x)
.leftJoin(x.createdBy).fetchJoin()
.leftJoin(x.createdBy.person, QPerson.person).fetchJoin()
.on(x.createdBy.person.id.eq(QPerson.person.id))
.offset(pageable.getOffset())
.limit(pageable.getPageSize())
.where(booleanBuilder.and(predicate));
JPQLQuery<X> countQuery = ((AbstractJPAQuery) query).clone(entityManager);
return PageableExecutionUtils.getPage(query.clone(entityManager).fetch(),
pageable, countQuery::fetchCount);
解决方案
推荐阅读
- mysql - 在 mysql 5.7 中搜索 Json
- html - 如何垂直消除小间隙
- javascript - 仅在 IE 中的 JavaScript 中无法访问文档 onload 中的 Telerik radcombobox 对象
- javascript - Css Selecton 在某些表情符号中不可用
- sql - 从动态查询 Bigquery 生成视图
- c++ - 动态转换规范(规则)说明
- java - 更新 RecyclerView 数据会减慢 Activity 的 UI
- php - 将字符串格式的函数转换为计算
- spring-boot - 无法在外部 tomcat 上部署 Spring Boot 应用程序
- github - 范围有限的个人访问令牌可以与其他用户共享吗?