`
isiqi
  • 浏览: 16499148 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

简单介绍javabean 和 ejb 的区别

阅读更多
现在可能已在使用JavaBean,但还不了解它。如果有支持Java的浏览器,那么,在桌面上使用JavaBean就没有限制。使用的Web页面可以将bean作为小应用程序的一部分。您很快就会和作为浏览器可视部分的JavaBean交互,然后,那些JavaBean将与服务器上的EJB接口。
这种能力也可以扩展到因特网和内部网。

JavaBean和ServerBean(通常称为EnterpriseJavaBean(EJB))有一些基本相同之处。
它们都是用一组特性创建,以执行其特定任务的对象或组件。它们还有从当前所驻留服务器上的容器获得其它特性的能力。这使得bean的行为根据特定任务和所在环境的不同而有所不同。
这开辟了巨大商机。因为JavaBean是与平台无关的,所以对于将来的解决方案,供应商可以轻易向不同用户推出其客户机方的JavaBean,而不必创建或维护不同的版本。这些JavaBean可以与执行商业功能(例如订购、信用卡处理、电子汇款、存货分配、运输等)的EJB配合使用。这里有巨大潜力,而这正是组件代理(WebSphereApplicationServer企业版)设计提供的那种潜力。

JavaBean是一种组件,它在内部有接口或有与其相关的属性,以便不同人在不同时间开发的bean可以询问和集成。可以构建一个bean,而在以后构造时将其与其它bean绑定。这种过程提供了先构建,然后重复使用的方法,这就是组件的概念。可以将这种单一应用程序部署成独立程序、ActiveX组件或在浏览器中。

JavaBean因其外部接口(即属性接口)而与纯对象不同。这种接口允许工具读取组件要执行的功能,将其与其它bean挂钩,以及将其插入其它环境。JavaBean设计成对单一进程而言是本地的,它们在运行时通常可视。这种可视组件可能是按钮、列表框、图形或图表-但这不是必需的。

可执行组件
ServerBean或EJB是部署在服务器上的可执行组件或商业对象。有一个协议允许对其进行远程访问或在特定服务器上安装或部署它们。有一系列机制允许它们将服务安全性、事务行为、并发性(由多个客户机同时访问的能力)和持久性(其状态可以保存多久)的主要方面授权给EJB服务器上其所在的容器。当安装在容器中时,它们获得各自的行为,该行为提供不同质量的服务,因此,选择正确的EJB服务器至关重要。这正是IBMWebSphere企业版的优势所在。

EJB是设计成运行在服务器上,并由客户机调用的非可视远程对象。可通过多个非可视JavaBean构建EJB。它们有一个部署描述符,其目的与JavaBean属性相同:它是以后可由工具读取的bean的描述。EJB还独立于平台,一旦编写好,还可以在任何支持Java的平台(包括客户机和服务器)上使用。

因为EJB由诸如IBMVisualAgeforJava这样的工具集生成,所以,它是基于服务器的对象,并用于远程调用。它们安装在EJB服务器上,并象调用其它CORBA远程对象那样获得进行调用的远程接口。

ActiveX对象
可以将JavaBean部署成ActiveX对象,虽然EJB的代理也可以这样做,但是,因为ActiveX运行在桌面上,所以,EJB本身不能成为ActiveX对象。要在与平台相关的、仅Windows平台上做到这一点,开发人员可以将JavaBean变换成ActiveX组件。

好处
EJB的主要好处在于:构建bean时,bean开发人员可以规定需要什么类型的行为,而不必规定如何去做。开发分为两部分:程序员开发bean,然后验证:它可与构建工具一起工作,并包括标识所需服务质量行为种类的部署描述符。下一步,另一个程序员可以采用这个bean,并使用读取EJB部署描述符的部署工具,然后将该bean安装到EnterpriseJavaServer上的容器中。在第二步中,部署工具采取一些操作-这可能意味着生成如状态保存代码,放入事务挂
钩,或执行安全性检查这样的代码。所有这些操作由部署工具生成,bean开发人员和部署人员可以是不同的人。

可以通过使用部署工具,将任何独立于平台的JavaBean改写成具有可靠服务质量、特定于平台的EJB,以满足现有商业系统和应用程序的特定需求。这就是EJB服务器对集成系统、网络和体系结构如此重要的原因所在。

EJB与IBMWebSphere企业版
在IBMWebSphere企业版中使用时,可以将EJB配置成被管理的商业对象。接受它们授权服务的容器是其安装到的容器。将EJB的持久性部分映射在数据或状态对象中。EJB服务器为EJB提供不同的服务质量,选择正确的EJB服务器可能对满足完整的商业需求至关重要。“组件代理”功能极其健壮,该功能提供如负载均衡和支持服务器组中多台机器的高级功能。它还有大大超出EnterpriseJavaServer(EJS)规范所倡导的系统管理功能。因此,按照基本标准编写的
JavaBean或EJB可以运行在使用“组件代理”功能的WebSphere企业版上,并获得那些所有的附加功能。

EJB服务器还提供独特的特性和服务质量,而且不完全相同。IBM“组件代理”有一些强大特性-例如,可伸缩性,它允许开发人员将EJB部署到从小型系统到大型网络的不同类型服务器。开发人员可以从小处入手,例如,在一个部门中,首先在LAN的Java服务器上部署,一旦准备好,就知道可以将在那里创建的JavaBean和EJB部署到全球网络。然后,开发人员可以测试并熟悉这些bean,试运行,制作样本等等。满意之后,开发人员可以通过将其移至高性能服务器,来大幅度扩大其规模。JavaBean和EJB不受任何计算机体系结构边界的限制。它们用Java编写,可以运行在任何具有Java虚拟机的系统上,并可以使用任何EnterpriseJavaServer(EJS)来部署对象。因此,开发人员现在可以在方便的系统上构建,以后在方便的系统上部署,而不必是同一台或同样类型的机器。

IBMWebSphere企业版支持将商业对象部署到多台服务器。EJB作为商业对象集成到“组件代理”功能,并作为任何其它商业对象处理。因此,EJB可以连接到所选的后端系统,并执行任何所需操作,以满足其商业需求。这就成为“组件代理”为EJB提供的基础设施。通过将“组件代理”用作EJB服务器,开发人员将能够继续使用当前旧有系统,并将其与电子商务接口一起提供。

为使EJB能在WebSphere“组件代理”环境中工作,可以使用“组件代理”部署工具将其安装在一台或多台服务器上,然后将其添加到命名服务器,以便可以全局查找到它。任何可以访问公共命名服务器的人都可以找到它,找到其宿主,并可以在宿主上执行方法,同时创建EJB。这就是“代理组件”要做的事。

示例
让我们举一个在Web购物站点上可以看到的电子购物车的例子。用户的购物车是一个JavaBean。用户将货架上的商品放入购物车,这些商品本身是JavaBean。它们全部可视,并且面向用户。结帐时,将用户购物车中的商品发送到服务器上的EJB,该EJB执行一些必要的操作,如检查信用卡授权和可用额度,生成封条,或生成给发货部门的有关提什么货和发货地点的特殊指示-这就是商业程序已在进行的活动。

结束语
Bean的全部意义不只是其现有能力,更在于其可以为商业提供的有竞争力的潜在能力。IT设计师和应用开发人员现在可以将精力完全集中在商业逻辑,而将如事务、持久性和安全性的底层工作留给服务器。WebSphere的“组件代理”功能将提供所有这些(还有后端访问)和对象事务管理器。
分享到:
评论

相关推荐

    POJO javaBean EJB JNDI 理解及区别

    ### POJO、JavaBean、EJB与JNDI的理解及区别 #### POJO:Plain Old Java Object POJO,即“纯旧式Java对象”,它指的是最基础的Java类对象,没有任何框架约束,也不实现任何特定接口。POJO的主要特征是拥有私有...

    EJB 企业级javabean

    **企业级JavaBean (Enterprise JavaBeans, EJB)** 是Java平台上的一个核心组件,用于构建分布式、事务处理、安全性和可扩展的企业级应用程序。EJB规范定义了如何在Java环境中创建服务器端组件,这些组件可以在Java...

    Enterprise JavaBean (EJB) 是可重用的、可移植的 J2EE 组件。EJB 由封装业务逻辑的方法组成。譬如说,EJB 可能有这样的业务逻辑:

    可根据对话状态的保持性,即有状态和无状态对会话bean进行分类。 无状态的会话 bean没有内部状态。它们不跟踪记录从一个方法调用传递到另一个方法调用的信息。因此,每次调用无状态的业务方法都独立于前一次调用,...

    MVC设计模式的JavaWeb项目所需要的jar(Jsp+Servlet+JavaBean(EJB)).zip

    在大型JavaWeb项目中,EJB可以替代简单的JavaBean来处理复杂的业务逻辑。 5. **数据库连接库**: - `mysql-connector-java-5.1.7-bin.jar`:这是MySQL的Java驱动程序,允许Java应用程序与MySQL数据库进行交互。 -...

    2022年JavaBean(EJB) 3.0 全新体验Java教程.docx

    JavaBean(Enterprise JavaBeans,EJB)3.0 是一种企业级应用开发的重要技术,尤其在Java平台上。EJB3.0的发布旨在解决EJB2.x版本中存在的复杂性问题,提升开发效率和生产力。本教程将聚焦于EJB3.0的改进,包括元...

    javabean介绍

    Javabean的介绍,不懂的看看 最初,JavaBean的目的是为了将可以重复使用的软件代码打包标准。特别是用与帮助厂家开发在综合开发环境(IDE)下使用的java软件部件。这些包括如Grid控件,用户可以将该部件拖放到开发...

    EJB方面 ejb pdf

    EJB和JavaBean虽同属Java生态,但它们的应用场景和特性有显著差异: - **JavaBean**:是轻量级的、可重用的组件,没有严格定义的规范。理论上任何Java类都可能被视为一个Bean,但在实践中,JavaBean通常具备无参数...

    EJB 资料,enterprise javabean

    ### EJB (Enterprise JavaBean) 相关知识点详解 #### 一、EJB 概念与历史背景 EJB(Enterprise JavaBeans)是Java平台的一部分,用于开发和管理基于组件的企业级应用程序。它由Sun Microsystems在Java 2平台企业版...

    深入探索EJB:在Java中实现企业级JavaBean的实践指南

    企业级JavaBean(EJB)是Java EE(现在称为Jakarta EE)的一部分,它提供了一种创建分布式、可伸缩、事务性业务逻辑的方法。EJB通过容器管理的组件模型,为开发者提供了声明式事务管理、安全性、远程访问等高级企业...

    EJB--.rar_Java EJB_ejb_javabean

    本教程介绍了 Enterprise JavaBean 技术,特别关注于在分布式计算方案中 Enterprise JavaBean 组件的角色、体系结构、扩展 API 以及使用 EJB 技术的基本知识。

    NIIT考试(j2ee javabean sevlet jsp ejb)

    【标题】"NIIT考试(j2ee javabean sevlet jsp ejb)"涉及到的是一场关于Java企业级开发的考试,其中涵盖了多个关键知识点,主要包括Java 2 Enterprise Edition (J2EE)、JavaBeans、Servlets、JSP(JavaServer Pages)...

    EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。

    ### EJB (Enterprise JavaBean)概述 EJB (Enterprise JavaBean)是J2EE(Java 2 Platform, Enterprise Edition)框架的重要组成部分,它提供了一套用于构建可扩展、分布式的多层企业应用的标准。EJB的目标是通过抽象...

    EJB介绍

    【EJB介绍】 EJB(Enterprise JavaBeans)是Java平台上的一个核心组件,主要用于构建企业级的分布式应用程序。EJB的出现旨在解决大型企业系统中常见的复杂性问题,如服务集群、事务管理、安全性以及资源的高效利用...

    EJB基础(学习EJB者必看)

    EJB基础学习中,首先会介绍EJB的基本类型,包括会话bean(Session Beans)负责处理客户端请求,实体bean(Entity Beans)代表持久化数据,以及消息驱动bean(Message-driven Beans)用于接收和处理JMS消息。...

    一个简单的EJB实例

    **企业JavaBean(EJB)**是Java平台上用于构建可部署在服务器端的企业级应用程序的组件模型。EJB提供了一种标准的方式来实现业务逻辑,使开发者可以专注于代码,而无需关心底层的分布式计算细节。本实例旨在帮助初学...

    EJB教程

    本教程将深入探讨EJB及其与JavaBean的区别。 **EJB概述** EJB是Java EE(Java Platform, Enterprise Edition)的一部分,主要设计用于处理服务器端的业务逻辑。它们分为三种主要类型:会话Bean(Session Beans)、...

    JavaBean(EJB) 3.0 全新体验

    在本文中将对新的规范进行一个概要性的介绍,包括新增的元数据支持,EJBQL的修改,实体Bean模型访问bean上下文的新方法和运行时环境等等。作者还讨论了EJB在未来要作出的调整以及EJB3.0与其他开发规范之间的关系。 ...

    JavaBean介绍

    #### 四、JavaBean与EJB的区别 - **定义**:JavaBean通常用于表示简单的数据结构或行为,而EJB(Enterprise JavaBean)则是用于构建企业级应用的服务端组件。 - **开发包**:JavaBean使用`java.beans`包开发,是...

Global site tag (gtag.js) - Google Analytics