Я пытаюсь создать списки из 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();
}