JavaEE PO VO BO DTO POJO DAO 整理总结
来源:互联网 发布:中经网数据库怎么注册 编辑:程序博客网 时间:2024/05/22 05:17
佩服能将复杂难懂的技术,抽象成简单易懂事物的人。
厌恶将简单易懂的技术,添加一堆专业术语将别人弄的头晕目眩的人。
PO VO BO DTO POJO DAO 总体一览:
1.DAO[data access object]数据访问对象
DAO层对开发人员黑盒,由架构师设计封装。
在很长一段时间内,我将它理解为对数据库的访问,后面随着项目的积累。
发现自己的理解相对狭隘,对数据访问不仅仅指的是对数据库的访问。
假如A系统调用B系统的服务获取数据,这时候A系统对B系统访问数据对象的封装也可以称为DAO。
2.DTO[data transfer object]数据传输对象
假设数据表中存在20个字段,但是在页面展示列表的时候,这20个字段显然都不会用到。
我想对其中的5个字段进行展示,而且这5个字段展示的时候,也并不是数据库中他们原有的样子。
还需要进行计算、截取、业务代码转名称 .....等等
数据传输对象因此而被诞生,一是能提高数据传输的速度,二能隐藏后端表结构。
3.PO[persistant object]持久层对象
持久对象属性和数据库中的字段是一一对应的,数据库中的一条数据可以理解为一个持久对象。
因ORM框架的广泛使用而被引入到 JavaEE 项目设计当中。
4.BO[bussiness object]业务对象
业务对象顾名思义是在业务处理中抽象出来的对象,里面除了get/set 方法外,也可以有对字段进行业务处理的方法。
假设你要对一个班级进行业务处理,其中的学生、教师、甚至是桌椅板凳都是业务对象的组成部分。
当然其中的学生、教室....都可以是和数据库对应的PO。
5.VO[value object]值对象
值对象也可以称做页面对象,如果称做页面对象,那门它所代表的将是整个页面展示层的对象。
可以由需要的业务对象进行的换算转换而来。
如果称呼他为值对象的话,那门他可以理解为存放业务对象的一个地方。
假设锅碗瓢盆分别为对应的业务对象的话,那门整个碗柜就是一个值对象。
4.POJO[plain ordiary java object] 简单java对象
简单java对象应该是JavaEE世界里面最灵活的对象。
在简单系统中,如果从数据库到页面展示都是POJO的话,它可以是DTO。
如果从数据库中到业务处理中都是POJO的话,他也可以是BO。
同样如果从数据库到整个页面的展示的话,它同样可以是VO。
小结:
各个数据对象之间的转换是相当灵活的,在项目中可以定义上述对象的全部和其中的几种类型,这取决与架构师和需求。
在大型项目中,架构师在项目初期的任务除了搭建起整个开发环境以外,定义在系统中流转的数据结构对象同样是重重之重。
这项工作需要许多项目的积累和长期对软件开发的思考,多实践,多思考,提供最合适的数据对象解决方法,方能展现架构师的魅力。
- JavaEE PO VO BO DTO POJO DAO 整理总结
- JavaEE PO VO BO DTO POJO DAO 整理总结
- DTO DAO VO BO PO POJO区别
- PO BO VO DTO POJO DAO 概念
- PO BO VO DTO POJO DAO概念
- PO BO VO DTO POJO DAO概念
- PO、VO、BO、DTO、POJO、DAO详解
- PO.BO.VO.DTO.DAO.POJO
- po,bo,vo,dto,pojo,dao区别
- PO VO BO DTO POJO DAO
- PO、VO、BO、DTO、POJO、DAO 详解
- PO、VO、BO、DTO、POJO、DAO
- PO/POJO/BO/DTO/VO
- PO BO VO DTO POJO
- PO BO VO DTO POJO
- Java的几种对象解释整理(PO、BO、VO、POJO、DAO、DTO)(转)
- PO BO VO DTO POJO DAO概念及其作用
- PO VO BO DTO POJO DAO之间的关系
- ubuntu 16.04 lts 安装intel realsense 步骤 librealsense
- Eclipse的常用设置步骤
- logback手册-第一章 介绍
- 字符级别word2vec
- Java笔记16
- JavaEE PO VO BO DTO POJO DAO 整理总结
- Java面试题全集(上)1
- 为何img、input等内联元素可以设置宽、高
- Java
- TabLayout和DrawerLayout结合使用
- PopuWindow
- 世峰运用三维地理信息技术为深信院场馆管理难题提供帮助
- 分类的详细
- https双向加密认证