后端如何处理“前端动态字段”?任务里遇到的真实场景与优雅解法(含实战代码)

最近在做监测指标值类业务时,遇到了一个非常典型、但处理不好很容易写得又臭又长的需求——前端动态勾选字段,后端也必须动态返回对应字段的值

它麻烦就麻烦在:

  • 前端传 中文字段名
  • 后端实体类是英文属性名(驼峰)
  • 数据库中一条数据含有几十个检测指标
  • 后端必须从中挑出前端想要的字段
  • 最终返回给前端一个 “动态字段 → 动态值” 的结构

一开始我以为只是普通字段映射,结果真正写时发现:
稍微处理不好就会变成 if/else/Jackson 手动拼字段的灾难代码。

这篇文章就完整分享一下我在项目中的解决方案(含实际生产代码)。欢迎批评指正。


业务背景:前端字段是动态的,而且是“中文字段名”

说什么都不如上图来的快,前端界面类似于:

前端界面允许用户勾选任意监测指标,底层图形中将会对应展示这些指标在一定时间范围内的曲线图(这里为了示例简单,我去除了横坐标展示的时间段及范围)。

勾选后传给后端的是这样的:

["pH", "铁(单位略)", "铝(单位略)", "总硬度(单位略)" ...]

这样的:就是但数据库查回来的实体类字段

中文名实体类字段(驼峰)
pH</
posted @ 2026-01-06 16:50  clnchanpin  阅读(8)  评论(0)    收藏  举报