spring - 如何使用可嵌入对象添加一对一关系
问题描述
要求:
获取请求列表以及请求反馈状态。
我现在在做什么: 使用 JPQL 查询获取所有请求。遍历每个请求并获取状态并设置为响应 dto。
我想做什么。使用 JPQl 查询获取所有请求以及状态
我在找什么:
如何为请求和状态添加一对一映射,以便获取状态。
示例代码
这是 MSREQUEST 实体
@Entity
@Table(name = "MSREQUEST")
public class Request implements Serializable {
@Id
private long requestId;
@Column(name = "DESC")
private string desc;
//getter.. setter...tostring and hashcode
}
这是状态实体
@Entity
@Table(name="FEEDBACKSTATUS")
public class FeedbackStatus implements Serializable {
// composite-id key
@EmbeddedId
private RequestFeedBackId requestFeedbackKey = new RequestFeedBackId();
@Column(name="STATUS")
private Long status;
//getter.. setter...tostring and hashcode
}
这是可嵌入的实体
@Embeddable
public class RequestFeedBackId implements Serializable {
@Column(name="REQUESTID")
private Long requestId;
@Column(name="FEEDBACKID")
private Long feedbackId;
}
服务
@Override
public List<MsaRequestSearchDto> searchMsaRequests(MsaRequestSearchDto msaRequestSearchDto)
throws MsaException, Exception {
List<MsaRequestSearchDto> msaRequestSearchDtoList = msaRequestRepoCustom.findMsaRequests(msaRequestSearchDto);
*// get feedback status loop thru and fetch status for each one. nee to avoid this
if(msaRequestSearchDtoList != null && msaRequestSearchDtoList.size() > 0){
// code to fetch dstatus
}*/
return msaRequestSearchDtoList;
}
我使用的 JPQL 查询..
public String GET_MSA_REQUEST = "SELECT dsr FROM Request dsr WHERE 1=1";
解决方案
推荐阅读
- visual-studio-code - VS Code 按下选项卡不会自动完成标签
- c# - 取消挂钩功能目标
- java - 如何在 Java 中创建目录?
- python - 评估 x 在 range(n) 内的时间复杂度是多少 **Python3**
- ocaml - OCaml中列表上的相互递归的语法错误
- nlp - Word2Vec 的功能是否相互独立?
- python - ValueError:错误的预期数组形状 - Keras 神经网络
- javascript - 如何为引导模式一起触发 2 个事件?
- ios - 重新排序时在 tableviewcell 上添加阴影
- javascript - 如何将 co.wrap 与生成器一起使用