前言
良好的开发规范,能显著的提高开发效率。所以对涉及到的一些对象做一些总结。
参考博客
领域驱动设计系列文章(2)——浅析VO、DTO、DO、PO的概念、区别和用处
简介
DO(Domain Object): 领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。(有时候,DO对象也可以对应数据库表结构。)
PO(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来,一般用于前端展示使用。
DTO(Data Transfer Object):数据传输对象,用于数据传递,泛指用于展示层与服务层之间的数据传输对象。。(接口入参和接口返回值都可以)
以ssm框架为例:
controller层:
public List getUsers(UserDTO userDto);
Service层:
List getUsers(UserDTO userDto);
DAO层:
List getUsers(UserDO userDo);