《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 网络 「网络」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

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:数据访问对象。

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

文章目录
  1. 1. VO
  2. 2. PO
  3. 3. DTO
  4. 4. BO
  5. 5. POJO
  6. 6. DAO