JPA: выбор данных из таблиц сущностей и не сущностей и сохранение их в DTO - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь создать списки из consultationDTO.Этот DTO использует урок (сущность), личность (сущность) и таблицу консультаций в SQL.Каждая консультация содержит date, personId и LessonId.Сейчас я пытаюсь написать запрос, который выбирает данные и сохраняет их в списке ConsultationDTO.У ConsultationDTO есть имя и фамилия человека, его ранг, название урока, дата консультации.

В настоящее время я пытаюсь понять, как написать такой запрос, а затем назначить правильный столбец.к правильному свойству DTO.До сих пор я использовал только NamedQueries, но я не думаю, что смогу использовать их, поскольку Консультация не является классом.

public List<ConsultationModel> getAllConsultations(){
//This query feels so wrong, I have no idea how to do this in a better way
    String sqlQuery = "SELECT p.firstName, p.lastName, p.rank c.date, l.name FROM Consultation c 
                  JOIN Person p ON c.personId = p.personId
                  JOIN Lesson l on c.lessonId = l.lessonId"; 

    Query qry = em.createQuery(sqlQuery);
//How do I assign the correct value to the correct property? (eg. p.firstName to personFirstName instead of lessonName)
    List<ConsultationModel> li = return qry.getResultList(); 
}
...