PO,VO,DAO,BO,POJO 之间的区别你懂吗?

  • VO

  • PO

  • DTO

  • BO

  • POJO

  • DAO


VO

value object:值对象。

通常用于业务层之间的数据传递,由new创建,由GC回收。

PO

persistant object:持久层对象。

对应数据库中表的字段。VO 和 PO 都是属性加上属性的 get 和 set 方法;表面看没什么不同,但代表的含义是完全不同的。

DTO

data transfer object:数据传输对象。

表里面有十几个字段:id,name,gender(M/F),age,conmpanyId(如001)...

页面需要展示四个字段:name,gender(男/女),age,conmpanyName(如今日头条股份有限公司)。

DTO由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构。

BO

business object:业务对象。

BO 把业务逻辑封装为一个对象。我理解是 PO 的组合,比如投保人是一个 PO,被保险人是一个 PO,险种信息是一个 PO 等等,他们组合起来是第一张保单的 BO。

POJO

plain ordinary java object:简单无规则 java 对象。

纯的传统意义的 java 对象,最基本的 Java Bean 只有属性加上属性的 get 和 set 方法。可以转化为 PO、DTO、VO;比如 POJO 在传输过程中就是 DTO。


DAO

data access object:数据访问对象。

主要用来封装对数据的访问,注意,是对数据的访问,不是对数据库的访问。

posted @   天使不哭  阅读(290)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2019-01-06 域名相关的一些基础知识
2019-01-06 域名相关的一些基础知识
2019-01-06 域名相关的一些基础知识
2018-01-06 身份证号码有效性检测算法 ( js版 转 C#版 )
2018-01-06 身份证号码有效性检测算法 ( js版 转 C#版 )
2018-01-06 身份证号码有效性检测算法 ( js版 转 C#版 )
点击右上角即可分享
微信分享提示