1、VO
vo(view object)视图对象
用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来,一般由后端传输给前端。
2、DTO
DTO(data transfer object)数据传输对象
用于展示层和逻辑层之间的数据传输。
3、DO
DO(domain object)
从现实世界中抽离出来的有形或无形的业务实体。
4、PO
po(persistent object)
跟持久层的数据结构构成一一对应关系。如果持久层是关系型数据库,那么PO的属性和数据库中的字段一一对应。
5、VO和DTO的区别
他们最本质的区别是:VO代表了需要展示的数据,DTO代表服务层需要接收和返回的数据。
举例
以一个填写表单的操作为例:
- 用户填写表单,表单的数据在展示层被匹配为VO
- 展示层把VO转换为服务层要求的DTO,传给服务层
- 服务层首先根据DTO构建一个DO,调用DO的业务方法完成具体业务
- 服务层将DO转换为PO,传递给持久层,由持久层完成持久化操作