entity、bo、vo、po、dto、pojo如何理解和区分?

             Java开发过程中,基本实体类包都以entity或者model来称呼;
             可是不少项目中,却以Bo、Vo来命名,面试的时候,也有可能被问到这些问题。那么,这几者分别代表什么意思呢?

一:PO( Persistant Object )持久对象(Entity)

                1)最常用实体类,基本 和 数据表一一对应,一个实体类 对应 一张表。
                2)多个记录还可以用 PO 的集合,PO 中应该不包含,任何对数据库的操作。
                3)好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。
                       Vo和Po,都是属性加上属性的get和set方法;表面看没什么不同,但代表的含义是完全不同的。

 

二:DO( Domain Object )领域对象

                1)就是从,现实世界中抽象出来的,有形或无形的 业务实体。
 

三:TO( Transfer Object )数据传输对象(发送和接收有用到,所以要放到 Common 中)

                1)不同 应用程序之间, 传输的对象。例如:为服务之间传输的对象。
                       简而言之,就是接口之间传递的数据封装。

                2)表里面有十几个字段:id,name,gender(M/F),age……
                     页面需要展示三个字段:name,gender(男/女),age
                3)TO由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构


 

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

                1)类似于 TO


 

五:VO( Value Object )值对象

                1)代表值对象的意思,通常用于 业务层之间 的数据传递。和 PO 一样,也是仅仅包含数据而已。
                        但应是 抽象出的 业务对象,可以和表对应,也可以不,这根据业务的需要。
                        用 new 关键字创建,由 GC 回收的。
                2)主要体现在:View Object:视图对象。
                           . 接受页面传递来的数据,封装对象。
                           .. 将业务处理完的对象,封装成页面要用的数据。用一个VO对象在控制层与视图层进行传输交换。
 

六:BO( Bussiness Object )业务对象

                1)封装 复杂的 业务对象,其中可能 包含 多个 PO 的字段,组成一个 满足业务条件的 BO 对象。
                2)例:我们就可以针对BO去处理再比如投保人是一个Po,被保险人是一个Po,险种信息也是一个Po等等,
                         他们组合起来就是一张保单的Bo。


 

七:POJO( Plain Ordinary Java Object )简单无规则 java 对象

                1)普通的 java 对象,以上所有的类,都可以 统称为 POJO。
                2)可以额转化为PO、DTO、VO;比如POJO在传输过程中就是DTO


 

八:DAO( Data Access Object )数据访问对象

                1)用来访问数据库的对象,就是 DAO ,为业务层提供接口;
                       包含了各种数据库的操作方法,通常与 PO 结合使用,对数据库进行操作。
                2)夹在业务逻辑 与 数据库 资源中间。配合 VO ,提供数据库 CRUD 操作。
                       是对数据的访问,不是对数据库的访问。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值