我的课
public class Teacher
与学生有ManyToMany关系:
public class Student
当我返回老师时,我只需要他们的学生证,而不是有关他们学生的完整信息。
我们有两个Dto(DataTransferObject):带有一些变量的StudentDto和TeacherDto。
我该怎么解决这个问题?
我也希望学生仅返回老师的姓名或ID。相反,他们返回完整的dto教师列表。
谢谢。
问题来源:Stack Overflow
在您中,TeacherDto您不应该具有StudentDtos的列表,而应该具有of 的列表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;
}
}
如果您有许多不同的DTO,则有很多库可帮助您自动在它们之间进行映射。
回答来源:Stack Overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。