DO、PO、VO、DTO、BO、POJO
- DO (Data Object):与数据库表结构一一对应,通过DAO层向上传输数据源对象。
- 一般就是从数据库查询的信息,将这些信息封装成DO类,
- DAO层将DO类上传给Service层,它的使命就完成了。
- PO(Persistent Object)=DO(Data Object)
- VO( View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
- 一般是将前端传来的表单等数据封装成VO类,
- Controller接收VO类,将VO类下传给Service层去处理
- DTO( Data Transfer Object):数据传输对象,Service或Manager向外传输的对象。
- 一般是Service将处理的结果封装成DTO类上传给Controller层,也有一些其它的,比如下发给flume等,
- BO( Business Object):业务对象。 由Service层输出的封装业务逻辑的对象。
- 业务对象。 由Service层内封装的临时业务逻辑的对象。通过调用 DAO 方法 , 结合 PO、VO 进行业务操作。 一个BO对象可以包括多个PO对象。如常见的工作简历例子为例,简历可以理解为一个BO,简历又包括工作经历,学习经历等,这些可以理解为一个个的PO,由多个PO组成BO。复杂例子PO1是交易记录,PO2是登录记录,PO3是商品浏览记录,PO4是添加购物车记录,PO5是搜索记录,BO是个人网站行为对象。
- POJO( Plain Ordinary Java Object)
- 专指只有setter/getter/toString的简单类,包括DO/DTO/BO/VO等。
- POJO是DO/DTO/BO/VO的统称,一般禁止命名成xxxPOJO。