java do po dto_初识VO、DTO、DO、PO实体类

首先解释一下,VO、DTO、DO、PO均是实体类,其性质是一样的,只是因为安全性及其他原因将其划分为了不同的层次。之所以这么划分是因为:假如有一张user表,包含userName、userPassWord、age、position这四个字段。现要展示user表中的信息到页面,密码肯定是不能展示的,但是与表user对应的PO实体类有userPassWord属性,如果全局都用这一个实体类,那么密码字段也会被传到页面,却不被使用。这样一来,传递了无用字段,并且安全性得不到保障。

1. VO:View Object(视图对象,作用于前台页面与表示层之间,将所有的数据封装到一起,比如:表单数据)

VO一般用于封装前端页面传递到Action/Controller的所有参数,这些参数并不一定完全与数据库中表的所有字段均匹配。

2. DTO: Data Transfer Object(数据传输对象,作用于表示层与业务层之间)

Action/Controller将接收到的VO对象进行业务逻辑处理,转化或者构造成DTO对象将其传递给service层

3. DO:Domain Object(领域对象,作用于业务层与dao层之间)

service使用接收到的DTO数据传输对象构造或者重构DO对象,传递到dao层

4. PO:Persistent Object(持久化对象,作用于dao层与数据库交互)

PO对象一般对应着表结构,由DO对象进过持久化得到PO对象(比如,通过orm将其持久化)。转化为持久化对象PO后则可以与数据库进行交互。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值