`

Javabean,POJO,PO,VO,DTO

    博客分类:
  • J2EE
 
阅读更多
Javabean,POJO,PO,VO,DTO

javabean:
    在Java程序或JSP程序中,其实有很多的代码段是可以重复使用的,比如对数据库的操作、用户的有效性检查及某些项特定功能的实现等。为了很好的解决这个问题,提高开发效率,Sun公司推出了JavaBean,简言之,JavaBean这是一个实现了某个功能且供重复使用的Java类。

    在JSP中使用JavaBean后,可实现HTML与Java代码的分离,使JSP更易于开发和维护。因此JavaBean成了JSP程序员的必备利器之一。

     虽然JavaBean是Java类,同时它也具有自己的一些特征:

      1、 JavaBean是一个public的类

      2、 JavaBean有一个不带参数的构造方法

      3、 JavaBean中的属性通过getXXX()和setXXX()进行操作

按着Sun公司的定义,JavaBean是一个可重复使用的软件组件。实际上JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象,简称bean。由于

javabean是基于java语言的,因此javabean不依赖平台,具有以下特点:
  1. 可以实现代码的重复利用
  2. 易编写、易维护、易使用
  3. 可以在任何安装了Java运行环境的平台上的使用,而不需要重新编译。

比如我们编写一个计算圆面积的java类CircleArea.java  以后需要计算圆面积的地方直接调用就行了。
-----------------
来自百度对POJO的解释:

  简单的Java对象(Plain Ordinary Java Objects)实际就是普通JavaBean,使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,有时可以作为value object或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方法。

其它的解释:
POJO -Plain Old Java Objects ,即"普通的老旧的Java对象".

  该名称的创立者之一Matin Flower是这样解释的: "对于人们经常忘记常规的Java对象,我的总结是它们没有一个好名字 - 因此在准备一次演讲时,Rebecca Parsons, Josh Mackenzie 和我给起了名字: POJO。"

  POJO是不包含业务逻辑的透明组件,就像其命名那样,它的确简单,只用作单纯的DTO(Data Transport Object 数据传输对象)或是VO(Value Object 值对象).它通常的构成形式为一个包含私有变量作为属性以及访问其属性的getter和setter方法的类,根据需要可以为其添加constructor.对于初识POJO的人来说,它很像JavaBean,但按照其应与其他组件易组合的设计目的,它不应包含业务逻辑的处理,这也是与JavaBean不同的地方。

PO -Persistent Object ,即"持久化对象".

PO是位于EIMS层数据库中的实体,生命周期和数据库密切相关.在向数据库插入记录时创建该实体,删除或关闭数据库时该实体随之消亡.很多优秀的开源框架都实现了将数据库中的PO通过ORM用POJO来实际操作,如Hibernate,JDO等。

最后我们总结一下:

1.VO/DTO 就是Value Object和Data Transform object就是作为数据使用的对象

2.POJO,是Plain Ordinary(Old)Java Object的缩写,是不包含业务逻辑的JavaBean,通常情况下可以作为VO/DTO来使用

3.PO,是Persistence Object的缩写,来自各种各个JPA ORM(Java Persistent API Object Relational Mapping)提供商比如Hibernate toplink等厂商,是跟数据库交互的时候存在的中间对象,而且可以有各种逻辑操作。
pojo与实体bean:
pojo 应用于页面数据的操作,是来保存数据的。(你也可以不这样做,但是这已经成了一种规范。)

实体bean与数据库表关联,是对数据表的操作。

其它:

POJO和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Plain Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多,JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被拿去用,这个扳子也提供多种功能(你可以拿这个扳子 扳、锤、撬等等),而这个扳子就是一个组件。

先解释上面的意思:

pojo的格式是用于数据的临时传递,它只能装载数据, 作为数据存储的载体,而不具有业务逻辑处理的能力。
而javabean虽然数据的获取与pojo一样,但是javabean当中可以有其它的方法。
分享到:
评论

相关推荐

    Javabean与DTO的区别.docx

    总结一下,JavaBean、DTO、POJO和PO各有其特定的用途: - JavaBean主要用于封装业务逻辑和数据,方便在JSP中使用,同时也适用于代码复用。 - DTO专注于数据传输,不包含业务逻辑,常用于系统间的数据交换。 - POJO是...

    eclipse插件,根据数据库表自动生成DTO(pojo)插件

    生成的DTO和POJO类可能符合JavaBean规范,方便在各种Java应用中使用。 在压缩包中,`plugin.xml`文件是Eclipse插件的核心配置文件,它定义了插件的元数据,如插件ID、依赖项、提供的功能和命令等。`icons`目录可能...

    pojo类与javaBean

    ### POJO类与JavaBean详解 #### POJO类与JavaBean的概念 在Java开发领域,POJO类与JavaBean是两个常被提及的概念,它们在软件设计和编码实践中扮演着重要角色,尤其在构建可扩展性和维护性高的系统时更是不可或缺...

    json2javabean josnschema2pojo

    JSON到Java Bean转换工具,如"json2javabean"和"josnschema2pojo",是开发人员在处理JSON数据与Java对象之间转换时的便利工具。这些工具能够根据JSON格式的数据自动生成对应的Java类,使得数据绑定变得更加简单和...

    自身关联的添加、检索及PO到VO得封装、转换

    在实际应用中,如果需要更精细的分离,可能会有专门的VO类,将PO转换成VO是为了适应业务需求,例如添加额外的业务逻辑属性或者隐藏敏感信息。 总结起来,这个例子展示了如何在Java中使用Hibernate处理自身关联的...

    【IT十八掌徐培成】Java基础第04天-05.构造代码块-构造函数-javabean-pojo.zip

    在这个【IT十八掌徐培成】的课程中,我们重点关注了Java基础知识的第四天内容,主要讲解了构造代码块、构造函数以及JavaBean和POJO的概念。下面我们将深入探讨这些关键知识点。 首先,构造代码块是在类中定义的一段...

    Dto,javaBean,带注释自动生成

    Dto(Data Transfer Object)和JavaBean是Java编程中常见的两种对象模式,它们在软件开发中扮演着重要角色,尤其是在数据交换和模型表示方面。这里我们将深入探讨这两种对象以及如何通过工具自动化生成它们,并且...

    JSON转javabean(pojo)利器-附件资源

    JSON转javabean(pojo)利器-附件资源

    text-to-javabean:通过 json 生成 javabean(pojo)

    the tool help you to generate javabean(pojo) by json.it is so strong that you will like it.enjoy it now at ##功能介绍 我们开发的java系统,经常需要调用其他系统的API。这些API的返回格式,往往都是json...

    pojo生成器

    JavaBean则是一种符合特定规范的POJO,它通常是可序列化的,且具有默认的无参数构造函数,以及属性的getter和setter方法。 在Java与Oracle数据库交互时,每个POJO类通常对应数据库中的一张表,类中的每个字段对应表...

    通过实例解析POJO和JavaBean的区别

    "通过实例解析POJO和JavaBean的区别" POJO(Plain Ordinary Java Object)是指普通的Java类,具有一部分getter/setter方法的那种类。它们的特点是支持业务逻辑的协助类,方便程序员使用数据库中的数据表,对于...

    数据表生成pojo

    - POJO类应遵循JavaBean规范,提供默认构造函数以及getter和setter方法。 - 需要处理特殊数据类型,如日期、枚举等,确保数据转换正确无误。 - 当数据库表结构变化时,记得同步更新对应的POJO类。 综上所述,...

    javabean工具类.rar

    - 在MVC(Model-View-Controller)架构中,JavaBean/VO常作为Model层的组件,用于在Controller和View之间传递数据。 - 在数据库操作中,JavaBean/VO可作为数据库记录的映射,方便数据的读写。 7. **自动化工具的...

    JAVABEAN

    JavaBean是一种特殊的Java类,它是Java编程语言中的一个核心概念,尤其在开发企业级应用程序时极为常见。JavaBean遵循特定的规范,使它们能够被其他Java应用或开发工具(如IDEs)识别、可视化和操作。JavaBean的主要...

    JavaBean课件.rar

    例如,Spring框架中大量使用了JavaBean作为数据传输对象(DTO)或持久化实体。 学习JavaBean,你需要理解以下几个核心概念: - **属性绑定**:JavaBean的属性可以通过JavaBeans API(如PropertyUtils)进行动态绑定...

    javabean实例源码

    而JavaBean则是一种遵循特定规范的POJO,通常用于组件开发和数据封装。 在提供的压缩包文件"javabean"中,可能包含了多个JavaBean的源代码文件,每个文件代表一个独立的JavaBean实例,通过阅读和理解这些源码,你...

Global site tag (gtag.js) - Google Analytics