关于VO,BO,PO,DO,DTO的简单理解

一、关于VO,BO,PO,DTO的简单理解

VO(Value Object)值对象

值对象:每一个字段与视图层所需要的字段对应 ,可以理解为vo里面的字段,和前端请求参数里面的字段相对应

DTO(Data Transfer Object)数据传输对象

数据传输对象: 用来转换从PO到VO,或者从VO到PO的中间对象

BO(Business Object)业务对象

业务对象:就是对PO对象的一种展示对象,比如PO是一条学生记录,这时候BO对象里面包含的字段就可以是学个人数

PO(Persistant Object)持久对象

持久对象:PO的字段和数据库数据库里面的字段意义对应

二、案例说明

现在有一个html页面,上面有个用户注册表单, 有stuName、stuAge、stuSex 3个字段
VO对象也有这三个字段对应视图上的3个字段:

private string stuName;
private string stuAge; 
private string stuSex;

数据库中有个stu表,里面的字段有stuName、stuAge

所以PO对象对应的数据库表中也只有stuName、stuAge这两个字段

private string stuName;
private string stuAge; 

现在有一个业务,需求是:只有“stuSex="男"的数据才能存入数据库”

这个时候,就要用到VO了

我们要先从页面上拿到VO,然后判断VO中的stuSex是不是等于“男”,如果条件成立,就把VO中的stuName和stuAge拿出来,放到DTO中,然后在把DTO中的stuName和stuAge原封不动地放入PO中,然后将PO传入数据库,这就是他们三个的区别

PS:VO对应页面上需要显示的数据,PO对应于数据库中存储的数据,DTO对应于除二者之外需要进行传递的数据,DTO只是VO到PO,或者PO到VO的中间过程。

三、理解图在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值