java 中vo、po、dto、bo、pojo、entity、mode如何区分

PO

persistant object:持久层对象 (只负责从数据库中获取数据,一个P0对应一个表)

是ORM(Objevt Relational Mapping)框架中Entity,PO属性和数据库中表的字段形成一一对应关系

最形象的理解就是一个PO就是数据库中的一条记录。

好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。

VO

value object:值对象 (只负责向前台返回数据)

主要体现在视图的对象,对于一个WEB页面将整个页面的属性封装成一个对象。然后用一个VO对象在控制层与视图层进行传输交换。

DTO

data transfer object:数据传输对象 (1、负责接收前台传过来的数据并传递后端2、把数据转化成VO)

主要用于远程调用等需要大量传输对象的地方。

简而言之,就是接口之间传递的数据封装

表里面有十几个字段:id,name,gender(M/F),age……

页面需要展示三个字段:name,gender(男/女),age

DTO由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构

BO

business object:业务对象 (如果逻辑简单的话可以不加BO)

BO把业务逻辑封转为一个对象, 这个对象可以包括一个或多个其它的对象。

比如一个简历,有教育经历、工作经历、社会关系等等。我们可以把教育经历对应一个PO,工作经历对应一个PO,社会关系对应一个PO。

建立一个对应简历的BO对象处理简历,每个BO包含这些PO。
在这里插入图片描述

获取数据的过程:首先DAO从数据库获取结果集,转换为PO。Domain接受到DAO传递过来的PO之后,负责将PO转换为BO,再进行业务逻辑的处理。处理完毕,传递BO给service,service负责转换为DTO,传输给前端接收到DTO之后,首先转换为VO,然后再进行前端的业务处理。

提交数据的过程:前端将数据整理为DTO,传输给service,service转换为BO传输给Domain,Domain转换为PO,调用DAO提供的数据持久化方法,持久化PO,DAO负责将PO持久化为数据库的数据。
POJO (POJO是一种概念或者接口,身份及作用随环境变化而变化) :

plian ordinary java object:简单无规则java对象

POJO有一些Private的参数作为对象的属性。然后针对每个参数定义了get和set方法作为访问的接口

Plain Ordinary Java Object简单Java对象

即POJO是一个简单的普通的Java对象,它不包含业务逻辑或持久逻辑等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。

POJO对象有时也被称为Data对象,大量应用于表现现实中的对象。

一个POJO持久化以后就是PO。

直接用它传递、传递过程中就是DTO

直接用来对应表示层就是VO
DAO

data access object:数据访问对象

主要用来封装对数据库的访问。通过它可以把POJO持久化为PO,用PO组装出来VO、DTO

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值