entity、bo、vo、po、dto、pojo如何理解和区分?
Entity
最常用实体类,基本和数据表一一对应,一个实体一张表。
Bo(business object)
代表业务对象的意思,Bo就是把业务逻辑封装为一个对象(注意是逻辑,业务逻辑),这个对象可以包括一个或多个其它的对象。通过调用Dao方法,结合Po或Vo进行业务操作。
再比如投保人是一个Po,被保险人是一个Po,险种信息也是一个Po等等,他们组合起来就是一张保单的Bo。
Vo(value object)
代表值对象的意思,通常用于业务层之间的数据传递,由new创建,由GC回收。
主要体现在视图的对象,对于一个WEB页面将整个页面的属性封装成一个对象,然后用一个VO对象在控制层与视图层进行传输交换。
Po(persistant object)
代表持久层对象的意思,对应数据库中表的字段,数据库表中的记录在java对象中的显示状态,最形象的理解就是一个PO就是数据库中的一条记录。
好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。Vo和Po,都是属性加上属性的get和set方法;表面看没什么不同,但代表的含义是完全不同的。
Dto(data transfer object)
代表数据传输对象的意思
表里面有十几个字段:id,name,gender(M/F),age……
页面需要展示三个字段:name,gender(男/女),age
DTO由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构
Pojo(plian ordinary java object)
代表简单无规则java对象
纯的传统意义的java对象,最基本的Java Bean只有属性加上属性的get和set方法
可以额转化为PO、DTO、VO;比如POJO在传输过程中就是DTO
entity、bo、vo、po、dto、pojo如何理解和区分?相关推荐
- Java基础 - AO BO DO PO VO DAO DTO POJO
Java基础 - AO BO DO PO VO DAO DTO POJO AO Application Object 应用对象. 在Web层与Service层之间抽象的复用对象模型,极为贴近展示层,复 ...
- 关于JAVA Bean实体类对象pojo,vo,po,dto,entity之间的区别
关于JAVA Bean实体类对象pojo,vo,po,dto,entity之间的区别: Pojo: Pojo 普通的java对象 最基本的javaBean只有属性 加上属性的get,set方法,可以转 ...
- Java学习笔记——实体类(ENTITY,VO,DTO,BO)
最近在写代码的时候,对于Entity.VO.DTO.BO的概念有些混淆,不太了解具体的用途以及作用,所以想梳理一下. 阿里巴巴Java开发手册中的分层领域模型规约: DO(Data Object):此 ...
- 【转】entity、bo、vo、po、dto、pojo如何理解和区分?
Java开发过程中,基本实体类包都以entity或者model来称呼,可是不少项目中,却以Bo.Vo来命名,面试的时候,也有可能被问到这些问题.那么,这几者分别代表什么意思呢? Entity 最常用实 ...
- bo JAVA是什么意思_entity、bo、vo、po、dto、pojo如何理解和区分?
Java开发过程中,基本实体类包都以entity或者model来称呼,可是不少项目中,却以Bo.Vo来命名,面试的时候,也有可能被问到这些问题.那么,这几者分别代表什么意思呢? Entity 最常用实 ...
- POJO VO PO DTO 和JavaBean
最近在阿里手册的是突然看见PO,VO等名词发现自己还没有一个清晰的概念所以做了一些笔记. 我 给这些概念画了个关系图. pojo 为了和EJB区分而生的.就是一个简单的java对象也就是在构建这个类的 ...
- entity、vo、dto简单理解
1.概念 VO(View Object):视图对象,用于页面展示层,它的作用是把某个指定页面(或组件)的数据封装起来,传输到前端页面上. DTO(Data Transfer Object):数据传输对 ...
- VO,PO,DTO,BO的使用
为什么有这么多的O? po 一般来说对应数据库实体. update语句中用的最多. dto dto数据层操作对象. 为什么要有dto呢? 举个简单的例子: createDate 是创建时间,现在要筛选 ...
- DO、PO、VO、DTO、BO、POJO概念
DO.PO.VO.DTO.BO.POJO DO (Data Object):与数据库表结构一一对应,通过DAO层向上传输数据源对象. 一般就是从数据库查询的信息,将这些信息封装成DO类, DAO层将D ...
最新文章
- Progressive Web App是一个利用现代浏览器的能力来达到类似APP的用户体验的技术——不就是chrome OS吗?...
- mac phpstorm调试php,MAC下phpstorm20190302+Xdebug2.7断点调试PHP | 朱斌技术博客
- Linux之查看ubuntu版本
- redis集群常用命令
- ffmpeg-win32-v3.2.4 下载_MVBOX下载|MVBOX 7.1.0.4官方版
- 8X25Q充电部分软件梳理(CP侧)
- python硬件_「大神器!」硬件的AI性能测试Python库发布
- mysql 左右值算法详解_无限分类左右值算法的常规操作逻辑
- 【网络安全工程师面试合集】—常见端口扫描技术
- python django项目实例_最新Django项目实战-从零开发NB的任务平台python视频学习教程...
- 服务器安装找不到lsi驱动,IBM 服务器 SAS Raid LSI Windows2008 硬盘 驱动
- 微信与企业微信内嵌浏览器的UserAgent
- 如何打开计算机控制面板,控制面板怎么打开 快速打开控制面板方法大全-电脑教程...
- php 图片效果代码,php实用图片水印效果代码
- office2010安装出现错误1935的解决方法
- 农村也可以干大事业,小伙返乡种植葡萄,年收益达100万
- Adobe Creative Suite 3 下载(包括MAC版) 和 收集的一些资料
- FreeMind的使用
- 试试多线程(java)
- 浏览器沙盒--它是什么,我们为什么需要它?
热门文章
- 1360: plank 栅栏修复
- 不规则四边形填充平面 - Townscaper 网格生成算法复现
- 梦幻西游手游经验任务链计算机,梦幻西游手游任务链帮派求助刷经验技巧
- A Zealer:王自如
- 强化学习(RL)中的Q-learning在拿奖杯游戏的表现
- 使用JAVA程序片段动态生成表格
- android漂亮的dialog,一个好看的Android AlertDialog
- 6-3 电子书表格展示
- 4g状态显示微信未连接服务器,我手机4G网是一直开着的,为什么登录微信确显示未连网!而且微信消息不提醒,但是打开后消息就出来了...
- 图解三代测序(SMRT Sequencing)