JavaWeb中 pojo、entity、Dao、bo的含义
目录
- Entity
- Bo(business object)
- Vo(value object)
- Po(persistant object)
- Dto(data transfer object)
- Pojo(plian ordinary java object)
- Dao(data access object)
- Controller
- View
Entity
最常用实体类,基本和数据表一一对应,一个实体一张表。
Bo(business object)
代表业务对象的意思,Bo就是把业务逻辑封装为一个对象(注意是逻辑,业务逻辑),这个对象可以包括一个或多个其它的对象。通过调用Dao方法,结合Po或Vo进行业务操作。
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
Dao(data access object)
代表数据访问对象的意思,是sun的一个标准j2ee设计模式的接口之一,负责持久层的操作 。这个基本都了解,Dao和上面几个O区别最大,基本没有互相转化的可能性和必要,主要用来封装对数据的访问,注意,是对数据的访问,不是对数据库的访问。
Controller
代表控制层,主要是Action/Servlet等构成(Spring MVC则是通过@Controller标签使用)此层业务层与视图层打交道的中间层,负责传输VO对象和调用BO层的业务方法,负责视图层请求的数据处理后响应给视图层。
View
代表视图层的意思,主要是指由JSP、HTML等文件形成的显示层。
所以实际项目中,一般都是这样应用的:
控制层(controller-action),业务层/服务层( bo-manager-service),实体层(po-entity),dao(dao),视图对象(Vo-),视图层(view-jsp/html)
JavaWeb中 pojo、entity、Dao、bo的含义相关推荐
- bo dto java vo_java中PO、VO、BO、POJO、DAO、DTO、TO、QO、Bean、conn的理解
O/R Mapping 是 Object Relational Mapping (对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在 O/R Mapping 的世界里 ...
- java中PO、BO、VO、DTO、POJO、DAO是什么?
[前面的话] 在和技术人员的交流中,各种专业术语会出现,每次都是默默的记录下出现的术语,然后再去网上查看是什么意思.最近做项目,需要使用到DTO,然后学习一下吧. 这篇文章是关于Java DTO的,选 ...
- 【spring】PO,VO,DAO,BO,POJO,Bean之间的区别与解释
VO value object:值对象 通常用于业务层之间的数据传递,由new创建,由GC回收. PO persistant object:持久层对象 对应数据库中表的字段. VO和PO,都是属性加上 ...
- 【转】entity、bo、vo、po、dto、pojo如何理解和区分?
Java开发过程中,基本实体类包都以entity或者model来称呼,可是不少项目中,却以Bo.Vo来命名,面试的时候,也有可能被问到这些问题.那么,这几者分别代表什么意思呢? Entity 最常用实 ...
- java的几种对象(PO,VO,DAO,BO,POJO)解释
本文转自: http://blog.csdn.net/bzhxuexi/article/details/8227808 Java的几种对象(PO,VO,DAO,BO,POJO)解释 一.PO:pe ...
- java的几种对象(PO,VO,DAO,BO,POJO)解释(转)
[ 作者:赵小刀 ][ 大小:1k ][ 发布日期:2005-08-22 ][ 浏览:8678 ] java的几种对象(PO,VO,DAO,BO,POJO)解释 一.PO:pe ...
- Java中POJO、VO、DTO、PO、Entity、domain的区别
Java中POJO.VO.DTO.PO.Entity的区别 在看一些实际的项目的源码的时候,我们会发现POJO.VO.DTO.PO.Entity.domain的区别,那它们分别是什么呢,与我们学习Ja ...
- 在JavaWeb中集成BO报表
目录 一.获取LogenToken 二.使用LogonToken获取免登报表链接 在JavaWeb系统中,可以通过BO的webservice来获取LogenToken,然后使用LogonToken来打 ...
- entity、bo、vo、po 如何理解和区分?
文章目录 entity.bo.vo.po 如何理解和区分? 简介 Entity Bo(business object) Vo(value object) entity.bo.vo.po 如何理解和区分 ...
最新文章
- 解决spring的xml文件cannot be open ( class path resource cannot be opened)
- mysql general clomun_关于MySQL索引index杂谈
- python中and和or的惰性求值特点_Python中的惰性评估
- mysql 事务处理null_如何使用Mysql正确的处理财务数据
- 【算法导论】0-1背包问题 与 部分背包
- code principles
- PIFA 天线的推论及计算方法
- 【论文阅读】Computational Personality: A Survey 计算性格学综述
- 学NTFS格式磁盘解析及atapi磁盘读写
- 嵌入式学习代码总结(二)
- linux pkg解压工具,Pkg 1.3.0 发布,FreeBSD 的包管理工具
- MuJoCo的机器人建模
- okhttp3 Response.body().toString()
- 基于ASP.NET生成二维码详细源码
- Qt for python QChartView鼠标滚动放大缩小
- 【华人学者风采】李曙光 中国地质大学(北京)
- 【金猿投融展】极盾科技——业务数据安全专家
- 数据库中的blob是什么类型?
- 推荐免费好用的地图绘制软件Global Mapper开心版V24.0 Build 092022 x64
- python公众号文章_python如何导出微信公众号文章