Это возвращается из представления базы данных, которое соединяет класс и таблицы расписаний (один-один), следовательно, нет первичных ключей, и ожидал бы несколько строк одного и того же класса с каждым другим графиком. < /p>
Код: Выделить всё
@Entity
@Table(name = "vw_class_schedule")
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Immutable
@IdClass(ClassViewEntityId.class)
class FlatEntityClassAndSchedule {
@Id
Integer classId;
String subject;
@Id
Integer scheduleId;
ZoneId timezoneId;
Datetime startTime;
}
< /code>
где класс идентификатора: < /p>
public class ClassViewEntityId {
private Integer classId;
private Integer scheduleId;
}
< /code>
до этого: < /p>
class Class {
Integer classId;
String subject;
List schedules;
}
< /code>
Где расписание: < /p>
class Schedule{
Integer scheduleId;
ZoneId timezoneId;
Datetime startTime;
}
Подробнее здесь: https://stackoverflow.com/questions/795 ... -mapstruct