我的班
public class Teacher
与学生有ManyToMany关系:
public class Student
当我返回老师时,我只需要他们的学生证,而不是有关他们学生的完整信息。
我们有两个Dto(DataTransferObject):StudentDto和TeacherDto,带有一些变量。
我该怎么做才能解决这个问题?
我也希望学生仅返回老师的姓名或ID。相反,他们返回完整的dto教师列表。
谢谢。
TeacherDto
中,您不应该具有StudentDto
的列表,而应该具有Integer
的列表(如果Integer
是ID类型)。比您应该实现一些映射逻辑,例如在构造函数中,例如:public class TeacherDto {
private final Set<Integer> studentIds;
public TeacherDto(Teacher teacher) {
this.studentIds = teacher.getStudents().stream()
.map(Student::getId)
.collect(Collectors.toSet());
}
public Set<Integer> getStudentIds() {
return studentIds;
}
}