在实体类里面进行注解
注解以后该字段不会映射到数据库,再进行数据库查询的时候就不会出现找不到该字段的问题了
@Transient
private List<PublishBuy> publishBuys;
进行数据查询,查询以后将数据set 进设置的字段里面
public ServiceResponse publishPayList(Long userId) {
QPublishPay qPublishPay = QPublishPay.publishPay;
QPublishBuy qPublishBuy = QPublishBuy.publishBuy;
List<PublishPay> publishPays = jpaQueryFactory
.selectFrom(qPublishPay)
.where(qPublishPay.userid.eq(userId))
.fetch();
publishPays.forEach(e -> {
List<PublishBuy> publishBuys = jpaQueryFactory
.selectFrom(qPublishBuy)
.where(qPublishBuy.publishPayId.eq(e.getId())
.and(qPublishBuy.status.eq("2")))
.fetch();
e.setPublishBuys(publishBuys);
});
return ServiceResponse.createBySuccess(publishPays);
}
返回的结果
{
"status": "0",
"message": null,
"data": [
{
"id": "1084728620519395328",
"userid": "1069432178229641216",
"createTime": "2019-01-14 16:27",
"num": "10000",
"remark": null,
"residue": "3000",
"userInfoId": null,
"publishBuys": [ 这个字段就是自己加入需要set的字段
{
"id": "1085419089150742528",
"userId": "1069432178229641216",
"publishPayId": "1084728620519395328",
"createTime": "2019-01-17 13:19",
"status": "2",
"payUserId": "1069432178229641216",
"remark": null,
"fileName": "1085433001074102272",
"buyNum": "6000",
"platformStatus": "0",
"appeal": "0",
"appealReason": null,
}
]
}
]
}