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下