j2ee中,经常提到几种对象(object),理解他们的含义有助于我们更好的理解面向对象的设计思维。
POJO(plain old java object):普通的java对象,有别于特殊的java对象(含继承约束等)和EJB。POJO一般只有一系列的属性和相应的get、set方法。
PO(persistant object):持久化对象,有别于POJO,必须对应数据库中的实体。一个PO对应数据库的一条记录。持久化对象的生命周期与数据库密切相关,只能存在于connection之中,连接关闭后,PO就消失了。
PO相对于POJO有诸多不同,比如PO中会有保存数据库entity状态的属性和方法。但是ORM(object-relation mapping)追求的目标是PO和POJO的一致,所以在程序员的日常开发中,都是将POJO作为PO使用,而将POJO转化为PO的功能交给hibernate等框架来实现。
DTO(data transfer object):数据传输对象,以前被称为值对象(VO,value object),作用仅在于在应用程序的各个子系统间传输数据,在表现层展示。与POJO对应一个数据库实体不同,DTO并不对应一个实体,可能仅存储实体的部分属性或加入符合传输需求的其他的属性。
DAO(data access object):数据访问对象。提供访问数据库的抽象接口,或者持久化机制,而不暴露数据库的内部详细信息。DAO提供从程序调用到持久层的匹配。
BO(business object):业务对象。主要是将业务逻辑封装为一个对象,该对象可以包含一个或多个其他对象。如,"Principal"(委托人),有"Name","Age"等属性,同时和"Employee"(雇员)有1对多的关系,这个"Principal"就可以作为一个与业务相关的PO。
- 浏览: 77660 次
- 性别:
- 来自: 杭州
相关推荐
Java中 PO VO BO DTO DAO 和 POJO 关系图
本人以前搞不懂这些o的区别,特意查找资料总结了一下,希望也可以帮到其他人
本文将详细解析"PO/POJO/VO/BO/DAO/DTO"这六个概念,并探讨它们在实际项目开发中的作用和应用场景。 1. PO(Persistent Object,持久化对象) PO是指与数据库表结构一一对应的Java对象,它通常包含了数据库表中的...
### Java的几种对象详解:PO-VO-DAO-BO-POJO #### 一、PO:Persistant Object(持久对象) 持久对象(Persistent Object,简称PO),主要用于与数据库中的表进行映射。一个简单的PO对象可以代表数据库表中的一条...
在实际项目中,"JavaCodeGenerater"这个压缩包很可能包含了一系列的Freemarker模板文件,如dto.ftl、dao.ftl、rowmapper.ftl等,以及一个生成代码的主程序。主程序会读取数据库表结构,使用Freemarker解析模板,生成...
PO可以严格对应数据库表,一张表对映一个PO。... VO:value object值对象、view object视图对象 PO:持久对象 QO:查询对象 DAO:数据访问对象——同时还有DAO模式 DTO:数据传输对象——同时还有DTO模式
Java DAO(Data Access Object)是一种设计模式,用于封装对数据库的操作,从而将业务逻辑与数据访问逻辑分离。这种模式在大型项目中广泛应用,因为它提高了代码的可维护性和可测试性。DAO模式通常包括三个主要部分...
在Java企业级应用开发中,经常会遇到各种类型的对象,如PO、VO、TO、BO、DAO以及POJO等。这些对象各有侧重,在系统架构的不同层次扮演着不同的角色。本文将详细介绍这些对象的基本概念、应用场景及其之间的联系与...
本篇文章将对Java中的PO、VO、TO、BO、DAO、POJO等概念进行详细的解释,帮助读者更好地理解和应用这些技术。 PO(Persistant Object)持久对象 PO是Java中的一种重要概念,表示持久对象。在O/R映射中,PO通常对应...
总结来说,这个压缩包提供的内容涉及了Java中使用JAXB进行XML与Java对象之间转换的实际应用,以及辅助的DTO和文件读取工具。这些对于理解和实现XML数据处理的Java应用非常有帮助。开发者可以通过学习和使用这些示例...
然而,对于VO对象、DTO对象以及前端Vue页面等非预置的代码生成需求,就需要我们对默认的代码生成器进行扩展和定制。 在MyBatisPlus 3.5.3版本中,代码生成器主要有两种类:`AutoGenerator`和`FastAutoGenerator`。`...
根据数据库自动生成DAO和DTO,具体方法:解压到D盘根目录,修改property文件的数据库路径,驱动,用户名,密码等,进入CMD到D盘运行java -jar kingdao.jar即在D盘根目录test文件夹下生成DAO和DTO-DAO and the ...
在 Java 中,PO、VO、BO、POJO、DAO、DTO、TO、QO 等概念都是 O/R Mapping 中的重要概念。它们之间的关系是:BO 封装业务逻辑,调用 DAO 方法,结合 PO 和 VO 进行业务操作。DAO 中包含了各种数据库的操作方法,通过...
J2EE开发人员必须知道 Java Web开发中VO、PO、DTO、POJO代表含义。
本文将详细介绍VO (View Object)、DTO (Data Transfer Object)、BO (Business Object)、ORM (Object Relational Mapping)、DAO (Data Access Object)、Entity (实体)、DO (Data Object)、PO (Persistent Object)、...
2. PO(Persistent Object):持久化对象,正如其名,是用来表示数据库中表的行的Java对象。当数据库表的一行被加载到应用程序时,会创建一个对应的PO对象。PO对象的属性通常与数据库表的列一一对应。ORM框架会自动...
在Java开发过程中,我们经常会遇到编写相似的代码段,如Entity、DAO(Data Access Object)和Service层。这些层在业务逻辑中起到了重要的作用,但它们的创建往往具有很高的重复性,大大降低了开发效率。为了解决这个...
总的来说,MyBatis Generator简化了基于MyBatis的Java应用的开发流程,通过自动化生成DTO、DAO和Mapper接口及XML映射文件,使得开发者可以更加专注于业务逻辑的实现,而无需关心底层的数据访问细节。在大型项目中,...
在软件开发过程中,数据传输对象(Data Transfer Object, DTO)是一种常见的设计模式,用于在系统之间传递大量数据。DTO不包含任何业务逻辑,主要是数据容器。在这个场景中,"快速生成DTO"指的是利用Excel模板来自动...