网站首页 > 技术教程 正文
第一次见阿里巴巴开发中DO,DTO,VO,Query,AO时,整个人都蒙圈啦!
N 年前我们的项目里可能只有一个 POJO,无论数据库映射,数据库查询返回对象,service 接口返回对象,还是 controller 返回对象,基本都是使用同一个 POJO,在多人协作时,避免不了有人增加属性,修改 POJO。在前端请求接口时可能暴露很多额外的信息,我们可能会做多余属性去除操作。
阿里巴巴的分层领域模型规约:
DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。
DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
AO(Application Object):应用对象,在 Web 层与 Service 层之间抽象的复用对象模型,极为贴近展示层,复用度不高。
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。
Query:数据查询对象,各层接收上层的查询请求。注意超过 2 个参数的查询封装,禁止使用 Map 类来传输
为什么要这么设计?
1、前端页面不需要数据库表中的部分字段
如 id、createdTime、creatorId等等,前端页面根本不需要展示。传多余的字段不仅增加传输量,而且可能存在安全隐患。
2、数据库存的数字在前端需要回显
比如说性别,数据库可能存的 1,2,3 分别代表 男,女,私密;在前端页面需要展示中文。
3、为了遵循数据的三大范式,某些字段要展示,但是并不希望出现在数据库一张表中
比如说我们在 CustomerDO 保存 companyId,前端展示需要显示公司详细信息。
所以说光用一个 CustomerDO 并不是一个好的设计。
- 上一篇: 2022年高考成绩查询 2022年高考成绩查询官网
- 下一篇: 网站验证说明 网络网页验证
猜你喜欢
- 2024-11-13 利用query 实现多条件判断 query多条件查询
- 2024-11-13 百万到亿级数据,快速统计查询 百万数据查询解决方案
- 2024-11-13 TXT在Excel里还能这么用?一键导入、分列都不在话下
- 2024-11-13 数据分析选它,轻松搞定数据可视化
- 2024-11-13 BAT大厂员工都懂的Excel Power Query,你还不了解吗?
- 2024-11-13 EXCEL实用Power/Query功能应用,快捷提取中英文,无视内容格式
- 2024-11-13 7 款常用的 PostgreSQL GUI 工具测评
- 2024-11-13 网站验证说明 网络网页验证
- 2024-11-13 2022年高考成绩查询 2022年高考成绩查询官网
- 2024-11-13 PowerQuery透视列功能基本使用及应用案例讲解
你 发表评论:
欢迎- 05-23不用羡慕Mac,Windows电脑可以直接访问iPhone相册了
- 05-23换了电脑上不去网怎么回事?看看如何修改mac地址!
- 05-23怎么查看打印机IP地址
- 05-23查看电脑端口号的方法
- 05-23怎么查电脑局域网中的其他电脑ip地址
- 05-23如何查看笔记本电脑尺寸
- 05-23【网络】IP地址冲突如何快速定位?
- 05-23电脑系统改mac地址的方法
- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)