0x01 问题描述
[Student(studentId=1, person=org.fatmansoft.teach.models.Person@4abe6020, major=软件工程, className=一班, grade=一年级), Student(studentId=2, person=org.fatmansoft.teach.models.Person@5207b9e6, major=软件工程, className=二班, grade=二年级)]
前后端通讯数据明显不同,非常疑惑???(・∀・(・∀・(・∀・*)
0x02 解决
问题原因
export interface StudentItem {
studentId: number;
personId: number;
num: string;
name: string;
dept: string;
major: string;
className: string;
card: string;
gender: string;
genderName: string;
birthday: string;
email: string;
phone: string;
address: string;
grade: string;
url: string;
introduce: string;
}
解决方案
定义一个模板类StudentDto继承Student,将Student中没有的数据(此处是url和name),从person里拿到StudentDto里,然后返回一个StudentDto的list。
public DataResponse getStudentListByMajor(@Valid @RequestBody DataRequest dataRequest){
Optional<Student> student = studentRepository.findStudentByStudentId((Integer) dataRequest.get("studentId"));
Student s = student.get();
String major = s.getMajor();
List<Student> list = studentRepository.findStudentListByMajor(major);
List<StudentDto> collect = list.stream().map((item) -> {
StudentDto dto = new StudentDto();
BeanUtils.copyProperties(item, dto);
dto.setName(item.getPerson().getName());
dto.setUrl(item.getPerson().getUrl());
return dto;
}).collect(Collectors.toList());
return CommonMethod.getReturnData(collect);
}
原文地址:https://blog.csdn.net/qq_27378595/article/details/134817636
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_47326.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。