后端:数据流、数据聚合
参考https://www.runoob.com/java/java8-streams.html
案例1:
QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("enterprise_id",enterprise.getEnterpriseId());
List<String> stringList = groupMapper.selectList(queryWrapper)
.stream() // 首先调用了 stream() 方法将 List<Group> 转换为 Stream
.map(Group::getGroupName) // 然后使用 map() 方法将每个 Group 对象映射为 Group 对象 的 GroupName 属性的值
.collect(Collectors.toList()); // 最后使用 collect() 方法将映射后的结果收集到一个新的 List<String> 中
案例2:
// 有时候queryWrapper.in("exam_id",examIdList);可以解决问题
List<Integer> examIdList = getMyExamIdList(candidateId);
QueryWrapper<Exam> queryWrapper = new QueryWrapper<>();
List<Exam> myExamList = examMapper.selectList(queryWrapper)
.stream()
.filter(exam -> examIdList.contains(exam.getExamId())) // 过滤掉不在examIdList里的元素
.toList();