知识卡片

VO与实体分离的作用

专业/工作 · 618.f

内容

数据库实体(Entity)承载的是存储结构,而页面或接口真正要展示的内容往往不完全等同于存储结构本身——可能需要拼接、隐藏敏感字段或转换格式。这时需要引入VO(View Object,表现层对象)作为领域模型的一部分,专门负责把实体转换成展示层需要的形态,让实体只关心持久化,VO只关心展示。发散:这是分层架构里”关注点分离”的一个具体体现——一旦展示需求和存储结构耦合在同一个类上,任何一边的变化都会牵连另一边,拆开之后两者可以独立演化,代价是多了一层转换代码。

参考来源

《Spring Boot应用开发实战》第1章《Spring Boot基础知识》