pom.xml中加入依賴:
<!-- QueryDSL --> <dependency> <groupId>com.querydsl</groupId> <artifactId>querydsl-jpa</artifactId> <version>${querydsl.version}</version> </dependency> <dependency> <groupId>com.querydsl</groupId> <artifactId>querydsl-apt</artifactId> <version>${querydsl.version}</version> <scope>provided</scope> </dependency>
業務服務層:<示例>
//引入JPA EntityManager
@PersistenceContext
private EntityManager entityManager;
// 今日累計津貼 BigDecimal todaySubsidyTotal = new JPAQuery<>(entityManager) .select(QSenderRewarding.senderRewarding.amount.sum()) .from(QSenderRewarding.senderRewarding, QAgent.agent, QSender.sender) .where(QAgent.agent.cityCode.eq(QSender.sender.cityId)//代理商和配送員關聯 .and(QSender.sender.id.eq(QSenderRewarding.senderRewarding.senderId))//配送員和配送員獎勵關聯 .and(QSenderRewarding.senderRewarding.createTime.between(TimeUtils.today(), Instant.now()))//配送員獎勵時間限制 .and(QAgent.agent.id.eq(agentId)))//根據傳入agentId找到對應代理商信息 .fetchOne();//返回類型
JPAQuery每次查詢都需要重新new下