作为java开发人员,在开发项目过程中会遇到这些实体,这里为大家梳理了一下,供大家参考。
概念:
1.VO(View Object):视图对象,用于展示层,把某个页面的所有数据封装起来。
2.DTO(Data Transfer Object):数据传输对象,指展示层与服务层之前的数据传输对象。
3.BO(Business Object):业务对象,把业务逻辑封装为一个对象,这个对象可以包括一个或者多个其他对象。
4.PO(Persistent Object):持久化对象,与数据库表字段一一对应
5.DO(Domain Object):领域对象,从现实世界抽象出来的有形或者无形的业务实体。
区别点:
1.VO和DTO
DTO是从服务层获取的数据,不同页面展示形式不同,用VO来区分。
2.BO和PO
BO可以包含多个PO,BO中包括PO的所有字段
3.BO和DTO
DTO是从BO中抽取出一些需要的字段
4.DO
DO是领域对象,就是从现实世界中抽象出来的有形或者无形的业务实体。DO和PO在绝大部分情况下是一一对应的。
总结:
VO,BO,PO,DTO这样分层是有必要的,但是也不能教条主义,为了使用而使用,还是要根据实际情况。另外,确定使用后,团队中的成员都要遵守这个规则,避免各自有各自的写法,看起来比较乱。