Java中的VO/DTO/PO/BO/DO/POJO介绍

接下来介绍一下各种O的意义以及自己的理解:

  • VO:(View Object/Value Object)视图对象/值对象,主要是用于视图层,将页面上需要展示的数据进行封装起来;也可用于提交表单数据时将页面上的表单数据进行封装提交(有些在提交表单时直接用dto来代替或者单独建立一个form来处理,具体要根据工作要求)
  • DTO:(Data Transfer Object)数据传输对象,主要是用于在视图层与业务逻辑层之间进行数据的传递,从Controller层到Service层
  • BO:(Business Object)业务对象,主要是在业务逻辑层来使用,可以包含有多个PO;

关于BO的形象解释,例如一个学校为一个BO,BO中又可以包含学生PO、老师PO,在业务逻辑层中可以直接对学校这一个BO进行处理,在持久化的时候仍然只是对各个PO进行存储。

  • DO:(Domain Object)领域对象,就是从现实世界中抽象出来的有形或无形的业务实体,大部分情况下DO与PO一一对应;
  • PO:(Persistent Object)持久化对象,与持久层的数据结构形成一个一一对应的映射关系,一般PO中的字段与数据表的字段结构一一对应;
  • POJO:(Plain Ordinary Java Object)简单无规则的Java对象,具有私有属性和get/set方法,感觉POJO就是上边介绍的这几种O的总称。

推荐博文:
1、领域驱动设计系列文章(2)——浅析VO、DTO、DO、PO的概念、区别和用处
2、entity、bo、vo、po、dto、pojo如何理解和区分?
3、java web分层跟层间数据传递 vo bo po(转载)

猜你喜欢

转载自blog.csdn.net/qgnczmnmn/article/details/109067589
今日推荐