@OneToMany(cascade = CascadeType.ALL)
@MapKey(name = "period")
@JoinColumn(name = "teacher_id")
private Map<Integer, List<Student>> students;
我也向学生尝试了所有这些变体,但是当我尝试运行该程序时。它显示程序在创建数据库模式时遇到问题。
此索引由周期 - 1 组成。
@ElementCollection
@CollectionTable(name = "student_lists")
@Column(name = "student_list")
private List<List<Student>> students;
这是我尝试将列表放入列表时遇到的主要错误: 创建类路径资源 [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class] 中定义的名称为“entityManagerFactory”的 bean 时出错:关联“com.tracer.model.Teacher.studentsByPeriod”的目标类型为“java.util” .List' 不是“@Entity”类型
目前我创建了一个单独的实体 CustomStudentList 来存储学生列表:List>。但我想用地图代替。
我尝试了不同的变化。并找到了 CustomStudentList,它可以工作,但并不理想。
您需要利用 JPA 属性转换器。检查一下以供参考。