关于model层建VO和PO

本文介绍了持久对象(PO)、值对象(VO)的概念及其在不同层的作用。PO用于数据库映射,VO常用于业务层数据传递。两者都是数据对象(DO)的不同形态,会在属性内容、对象结构、类型和名称等方面发生变化。DO的转换规律包括减少、增加、填充、拆分、合并和类型变化。此外,还强调了对象校验的重要性,尤其是跨层校验的复杂性和重要性。
摘要由CSDN通过智能技术生成

一、PO

persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。

二、VO

value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.

有一种观点就是:PO只能用在数据层,VO用在商业逻辑层和表示层。
各层操作属于该层自己的数据对象,这样就可以降低各层之间的耦合,便于以后系统的维护和扩展。

1.三个概念

  • View Object(VO)
  • Business Object(BO)
  • Persistence Object(PO)

他们分别是三层结构的显示层、业务逻辑层和存储层内部使用的数据结构,它们还有一个统称,叫做数据对象Data Object(DO)。

我们也可以把VO,BO和PO看成是DO在不同阶段的不同表示形态。当一个DO从显示层开始穿越整个系统的时候,它的形态和结构就开始变化,从VO转变到BO,最终到PO,但是这个过程不一定是可逆的,这个过程如果反向,从PO->BO->VO,很可能就对应不同的对象了。比如当输入错误的时候,回馈页面可能就需要增加一个错误信息提示。虽然实际使用的时候,我们经常会忽略这种细微的差异性,实际上这个错误信息,只对显示层有意义。

2.DO的转换规律

DO的转换规律一般可以总结为如下的几个类型,实际变化则可以是各种类型的组合:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值