Java 对象秒变 Map:字段自由伸缩的优雅实现
前言
在开发中,我们常常需要把对象转成 Map 格式,用于序列化、传输、展示,甚至硬塞给某些第三方框架吃进去再吐出来。乍一看很简单,字段多起来后就像打翻调色盘,维护起来一不小心就翻车。想优雅地搞定这事,必须有一套稳妥、可扩展的方案,才能写出让同事膜拜、领导点赞、代码审查秒过的转换逻辑。
简介
实体类 XxxCode 使用 Lombok 注解,轻松管理字段,比如字段A、字段B 和字段N。我们的目标很清晰:把对象列表变成 List<Map<String, Object>>,让每个对象化身成 Map,字段名当 Key,字段值当 Value。这样一来,数据就像变魔术一样,轻松穿梭于前端展示、CSV 导出和各种接口对接,效率翻倍,开发更顺手,堪称数据格式转换的实用利器。
操作步骤
- 定义实体类 XxxCode,借助 Lombok 的 @Data,自动生成 getter/setter,省去手写代码的烦恼。
- 编写工具类 BranchConverter,实现对象列表到 Map 列表的转换逻辑,架构清晰不混乱。
- 使用 Java Stream API,优雅地把列表里的每个对象“一键打包”成 Map,代码简洁且高效。
- 在 mapBranch() 方法中手动映射字段,明确哪些字段上阵,扩展字段也方便跟进,维护轻松没压力。
跟着这步骤走,转换工作不慌不忙,效率杠杠的!