stream流做的那些事

假如一个学生类的list集合,返回50条数据;我只需要该集合中的学生姓名name字段,其他的字段都不想要,那么可以

java 复制代码
String gender="男";
List<Student> students = studentMapper.selectListByQuery(QueryWrapper.create()
.where(STUDENT.GENDER.eq(gender)));
List<String> nameList = students.stream().map(Student::getName).collect(Collectors.toList());
//nameList存的全是name字段的值

通过stram流把Student集合转换成StudentAo集合,案例

java 复制代码
 public R<Page<StudentAo>> sysGetPage(@RequestBody StudentVo vo) {
        Page<Student> page = studentService.page(vo.getPage(), vo.giveQuerywrapper());
        Page<StudentAo> pageAo =new Page<>();
        List<Student> records = page.getRecords();
        List<StudentAo> collect = records.stream().map(student -> {
            StudentAo ao = new StudentAo();
            BeanUtils.copyProperties(student, ao);
            return ao;
        }).collect(Collectors.toList());
        pageAo.setRecords(collect);
        pageAo.setPageSize(page.getPageSize());
        pageAo.setPageNumber(page.getPageNumber());
        pageAo.setTotalPage(page.getTotalPage());
        pageAo.setTotalRow(page.getTotalRow());
        return R.ok("成功",pageAo);
    }
相关推荐
野生技术架构师1 小时前
2026 Java 面试全套总结,八股 + 场景 + AI 相关面试考点
java·人工智能·面试
香吧香2 小时前
java服务异常日志只打印异常类型,没有堆栈定位分析
java·jvm·异常
qq_2518364572 小时前
AI 疾病自查功能SpringbootAI项目实战 · 技术实现文档
java·ai·ai编程
逆境不可逃3 小时前
Pi Agent 学习笔记:对话太长以后,如何压缩上下文
java
MetaLite3 小时前
JDK 8~26 核心特性一览:从 Stream 到 Scoped Values
java
wno7043 小时前
Spring Boot WebFlux增删改查
java·spring boot·后端
君顾13 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
SL_staff5 小时前
别急着买商业规则引擎:90%风控场景根本不需要全量编码能力
java·程序员·groovy
ManageEngineITSM5 小时前
DevOps和ITIL是什么关系?是替代还是互补一文讲清
java·服务器·资产管理·变更管理
SL_staff6 小时前
ERP排程总在纸上谈兵?JVS-APS如何用真实产能约束打通计划与执行闭环
java·人工智能·开源