vo类名须为xxxvo格式,字段用小驼峰、禁用is前缀布尔名,不继承其他对象,精简敏感冗余字段,关联数据需展开,命名直译前端语义。
vo(view object)变量命名需紧扣表现层职责,明确区分于dto、do等对象,避免字段泄露和语义混淆。核心是让名字本身就能说明“这是给谁看的、在哪用的、包含什么数据”。
VO类名必须带VO后缀且用大驼峰
这是强制规范,不是可选项。类名格式为XxxVO,其中Xxx应体现前端页面或功能模块名称,而非数据库表名或业务实体名。
- ✅ 正确示例:UserProfileVO(个人资料页)、OrderListVO(订单列表页)、ProductDetailVO(商品详情页)
- ❌ 错误示例:UserDO(混淆持久层)、UserDTO(模糊传输意图)、UserVO(太泛,无法定位具体视图场景)
VO字段名用小驼峰,禁用is前缀布尔值
VO字段直接映射前端JSON结构,必须与前端约定一致。Java中布尔类型字段若以is开头,Jackson等序列化框架可能误判getter方法,导致前端收不到值。
PigX UI Pro 前端开发指南 - Vue 3 + TypeScript + Element Plus。当用户提到 PigX UI、PigX 前端、lgb-mgui 项目、Vue 3 企业级后台开发、Element Plus 后台开发时使用此技能。
- ✅ 推荐写法:enabled、deleted、hasPermission
- ❌ 高危写法:isEnabled、isDeleted(反序列化时易丢失)
- 字段语义要面向展示,比如用
avatarUrl而非headImg,用statusText而非status(后者需前端再映射文案)
VO不继承、不复用其他层对象,字段按需精简
VO是独立构造的数据容器,禁止继承Entity或DTO,也不应通过Lombok的@Data直接复制字段。每个字段都应有明确的前端用途。
- 敏感字段如
password、idCard绝不能出现在VO中 - 冗余字段如
createTime若前端只显示“刚刚/1小时前”,应转为timeAgo字符串字段 - 关联数据应展开,例如订单VO中不放
userId,而是直接放userName和userAvatar
VO与前端接口字段保持命名直译
前后端联调时,VO字段名应能被前端开发者一眼识别用途。避免缩写歧义,优先使用完整英文词组合。
- ✅ 清晰命名:deliveryAddress、paymentMethodLabel、orderItemQuantity
- ❌ 模糊缩写:delvAddr、payType(是类型还是文案?)、itemQty(前端需查文档才懂)
- 若前端强依赖下划线风格(如React组件习惯
user_name),后端VO字段仍用小驼峰,靠Jackson配置@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)统一转换,不改Java字段名
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!








