Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

J2EE概述

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  今天,越来越多的开发者想要编写企业级的分布式的事务处理应用程序,而这些应用程序必须可以发挥速度、安全性和服务器端技术的可靠性。如果你已经在这一领域从事工作,你应该了解在现在这个高速发展、要求苛刻的电子商务和信息技术的世界中,企业级的应用程序必须具有以下特点:花费更少的金钱、具有更快的速度、占用更少的资源。

  为了减少费用,快速设计和开发企业级的应用程序,Java 2 Platform, Enterprise Edition (J2EE)技术提供了一个基于组件的方法来设计、开发、装配和部署企业级应用程序。J2EE平台提供了一个多层结构的分布式的应用程序模型,该模型具有重用组件的能力、基于扩展标记语言(XML)的数据交换、统一的安全模式和灵活的事务控制。你不仅可以比以前更快地发表对市场的新的解决方案,而且你的独立于平台的基于组件的J2EE解决方案不再受任何提供商的产品和应用程序编程界面(APIs)的限制。提供商和买主都可以自己选择最合适于它们的商业应用和所需技术的产品和组件。

  分布式的多层应用程序

  J2EE平台使用了一个多层的分布式的应用程序模型。应用程序的逻辑根据其实现的不同功能被封装到组件中,组成J2EE应用程序的大量应用程序组件根据在其所属的多层的J2EE的环境中所处的层被安装到不同的机器中。图1-1表示了两个多层的J2EE应用程序根据下面的描述被分为不同的层。在图1-1中涉及的J2EE应用程序的各个部分将在J2EE组件中给出详细描述。

  1、运行在客户端机器的客户层组件。

  2、运行在J2EE服务器中的Web层组件。

  3、运行在J2EE服务器中的商业层组件。

  4、运行在EIS服务器中的企业信息系统(EIS)层软件。

  尽管从图1-1中可以看到J2EE应用程序既可以是三层结构,也可以是四层结构,但是我们通常将J2EE应用程序的多层结构考虑为三层结构。这是因为它们分布在三个不同的位置:客户端机器、J2EE服务器机器和在后端的传统的机器。三层结构的应用程序可以理解为在标准的两层结构的客户端/服务器模式的客户端应用程序和后端存储资源中间增加了一个多线程的应用程序服务器。

  图1-1:多层结构的应用程序

  J2EE组件

  J2EE应用程序由组件组成。一个J2EE组件就是一个自带功能的软件单元,它随同它相关的类和文件被装配到J2EE应用程序中,并实现与其它组件的通信。J2EE规范是这样定义J2EE组件的:

  客户端应用程序和applet是运行在客户端的组件。

  Java Servlet和JavaServer Pages (JSP)是运行在服务器端的Web组件。

  Enterprise JavaBean(EJB)组件(enterprise bean)是运行在服务器端的商业软件。

  J2EE组件由Java编程语言写成,并和用该语言写成的其它程序一样进行编译。J2EE组件和“标准的”Java类的不同点在于:它被装配在一个J2EE应用程序中,具有固定的格式并遵守J2EE规范,它被部署在产品中,由J2EE服务器对其进行管理。

  J2EE客户端

  一个J2EE客户端既可以是一个Web客户端,也可以是一个应用程序客户端。

  Web客户端

  一个Web客户端由两部分组成:由运行在Web层的Web组件生成的包含各种标记语言(HTML、XML等等) 的动态Web页面和接受从服务器传送来的页面并将它显示出来的Web页面。

  一个Web客户端有时被称之为瘦客户端。瘦客户端一般不做象数据库查询、执行复杂的商业规则及连接传统应用程序这样的操作。当你使用一个瘦客户端时,象这样的重量级的操作被交给了在J2EE服务器执行的enterprise bean。这样就可以充分发挥J2EE服务器端技术在安全性、速度、耐用性和可靠性方面的优势。

  Applets

  从Web层接收的一个Web页面可以包含内嵌的applet。一个applet是一个用Java编程语言编写的小的客户端应用程序,它在安装在Web浏览器中的Java虚拟机中运行。然而,为了在Web浏览器中成功地运行applet,客户端系统很可能需要Java插作和安全策略文件。

  Web组件是用来建立一个Web客户端程序的首选的API,因为这样在客户端系统中就不需要插件和安全策略文件。同样的,使用Web组件可以有效地改善应用程序设计,因为它们提供了一个将应用程序设计和Web页面设计有效分离的途径。Web页面的设计者可以不必关心Java编程语言的语法就能很好地完成自己的工作。

  应用程序客户端

  一个J2EE应用程序客户端运行在客户端机器上,它使得用户可以处理需要比标记语言所能提供的更丰富的用户界面的任务。具有代表性的是用Swing或抽象窗口工具包(AWT)API建立的图形用户界面(GUI),但是一个命令行界面也是当然可能的。

  应用程序客户端直接访问运行在商业层的enterprise bean。然而,如果应用程序需要授权, 一个J2EE应用程序客户端可以打开一个HTTP连接来与一个运行在Web层的servlet建立通信。

  JavaBeans组件体系结构

  服务器层和客户层也可以包含以JavaBean组件体系结构(JavaBeans组件)为基础的组件来管理在一个应用程序客户端或applet与运行在J2EE服务器上的组件之间的数据流动以及服务器端组件与数据库之间的数据流动。在J2EE规范中JavaBeans组件不被认为是J2EE组件。

  JavaBeans组件具有实例变量以及用来访问实例变量中的数据的get方法和set方法。作这种用途的JavaBeans组件在设计和执行时相当简单,但是它必须遵守JavaBeans组件体系结构的命令和设计惯例。

  J2EE服务器通信

  图1-2显示了客户层组成的多种方式。客户端可以直接和运行在J2EE服务器中的商业层进行通信。如果是一个运行在浏览器中的客户端,也可以通过运行在Web层中的JSP页面和Servlet进行这种通信。

  你的J2EE应用程序是采用瘦客户端还是胖客户端。要作出这样的决定,你应该明白将胖客户端是将功能留在客户端,使它与用户更接近,而瘦客户端是将功能的实现尽可能地交给服务器。由服务器处理更多的功能,就更容易分发、部署和管理应用程序;而将更多的功能留在客户端对于有经验的用户也许是个明智的选择。

  图1-2 服务器通信

  Web组件

  J2EE的Web组件既可以是servlet也可以是JSP页面。Servlets是一个Java编程语言类,它可以动态地处理请求并作出响应。JSP页面是一个基于文本的文档,它以servlet的方式执行,但是它可以更方便建立静态内容。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:JSP开发工具的选择   下一篇:Enterprise Bean

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号