Java中 PO、DO、DTO、VO、FormBean的通俗解释

本文只是用通俗的实例简单理解概念,深层理解请参考链接:

http://www.hollischuang.com/archives/553

http://kb.cnblogs.com/page/522348/


假如数据库中有表Person分别有几个字段,姓名、性别(0,1)、生日(date)、密码,前端查询界面需要查看Person的信息。

   PO:

      persistant object持久对象

      最形象的理解就是一个PO就是数据库中的一条记录。  好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。

   DO:

      个人简单理解就是类似托管的PO,操作DO不会影响数据库的数据。

   DTO:

      数据传输对象。例如前台查询不会返回密码只是返回 姓名、性别、生日,于是我们将信息封装到DTO中进行传输。

   VO:

      value object值对象、view object视图对象。

      主要用于业务层之间的数据传递,属性是根据当前业务的不同而不同的。

      应用场景:获取的DTO数据中性别信息为0和1,但要求:手机上展示为帅哥和美女,而web端显示为男和女。

  FormBean:

      它只是HTML表单的封装,是为了在控制层弱化request中存储数据的作用,将request的get方法转变为对象的存取值

      如果让FormBean直接到业务层(它本来应该生活在控制层),View和Model就出现了强耦合,如果想改一下view的表示,整个业务逻辑都得改,恐怖的事情啊。

      应用场景:

            假如需要查询Person信息,并返回给前端”  姓名、年龄、是否成年 “。如果将FormBean直接作用与业务层,那么相关联的业务中都会设置这个”是否未成年“的字段,显然这不可取的。如果用VO处理业务那么简单多了,相关联的业务就不会受到影响,只需在FromBean里加一个字段就可以了,然后将VO转为FormBean交给前端。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值