В поисках решения для сопоставления нескольких student_id
строк под одним и тем же class_id
, вот таблица с 3 полями:
integer id PRIMARY KEY
integer class_id;
integer student_id;
В таблице может быть несколько строк под одним и тем же class_id
вот так:
Table = 'class'
id class_id student_id
1, 1, 1
2, 1, 2
3, 1, 3
4, 2, 1
5, 3, 1
Я пытаюсь сопоставить это с Pojo, чтобы я мог использовать его следующим образом:
List<UniClass> uniClasses = session.createQuery("FROM ClassOfStudent", ClassOfStudent.class).getResultList();
Я пытаюсь решить эту проблему с помощью@ElementCollection
Вот моя попытка:
@Entity
@Table(name = "class")
public class ClassOfStudents{
@Id
@Column("id")
private long m_id;
@Column(name = "class_id")
private long m_classId;
@ElementCollection
@CollectionTable(name = "class", joinColumns = @JoinColumn(name="class_id"))
@Column(name = "student_id")
private List<Long> m_studentIds;
....
}
Есть идеи, как заставить эту работу работать?