繁体   English   中英

如何从 Spring/JPA/Hibernate 中的嵌套实体中获取 object?

[英]How to get object from nested entities in Spring/JPA/Hibernate?

我有这个实体:

public class AnswerEntity {
    @ManyToOne
    private UserEntity user;
    @ManyToOne
    private AnswerDirectoryEntity answer;
    @ManyToOne
    private QuestionEntity question;
}
public class QuestionEntity {
    @ManyToOne
    private QuestionnaireEntity questionnaire;
}
public class QuestionnaireEntity  {
    private String code;
}

我需要通过user ID和来自QuestionnaireEntity的相应code获取所有用户答案。

我通过创建这样的查询来做到这一点:

List<AnswerEntity> answerList = answerRepository.findAllByUserId(userId);

并遍历我列表中的每个 object 并使用equals我将每个 object 与我的问卷代码进行比较:

for(AnswerEntity answerEntity : answerList){
            if(answerEntity.getQuestion().getQuestionnaire().getCode().equals(questionnaireId)){
     ///
}

但是这个解决方案非常慢,因为它必须从我的数据库中迭代每个 object,

谁能告诉我如何在我的存储库中创建一个可以帮助我的query

您可以在存储库中使用 JPA 方法查询这种方式

List<AnswerEntity> findByUserIdAndQuestionQuestionnaireCode(Integer userId, String code);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM