關於J2EE
1.簡介 :
J2EE Java2平台企業版(Java2 Plantform Enterprise Edition)
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。
傳統的c/s應用模式:
服務器提供的唯一服務就是數據庫服務,客戶端程序負責數據訪問、實現業務邏輯、顯示結果等。此種模式一般在第一次部署時比較容易,但難於升級或改進,而且經常基於某種專有協議(通常是某種數據庫協議)。這樣使重用業務邏輯非常困難。在WEB時代,二層化應用通常不能體現出很好的伸縮性,因而很難適應Internet的要求。
J2EE的分布式應用模式:
Sun設計J2EE的起因就是解決C/S模式的二層化結構的這種缺陷.它采用的是分布式應用結構.J2EE定義了一套標准來簡化,定義了一套標准化的組件,為這些
組件提供完整的服務,同時也自動為應用程序牏很多實現細節,諸如安全、多線程等。它將C/S的二層化結構根據實際需要切分成N層,主要的層級如下:
顯示:在一个典型的WEB应用中,客户端机器上运行的浏览器负责实现用户界面。
動態生成顯示:尽管浏览器可以完成某些动态内容显示,但为了兼容不同的浏览器,这些动态生成工作应该放在WEB服务器端进行,使用JSP、SERVLETS,或者XML。
业务逻辑:业务逻辑适合用SESSION EJB(后面将介绍)来实现。
数据访问:数据访问适合用ENTITY EJB(后面将介绍)和JDBC来实现。
后台系统集成: 后台系统的集成可能需要用到许多不同的技术,至于何种最佳需要根据后台系统的特征而定.
由于J2EE建立在JAVA2平台标准版(J2SE)的基础上,所以具备了J2SE的所有优点和功能。包括“编写一次,到处可用”的可移植性、
通过JDBC访问数据库、同原有企业资源进行交互的CORBA技术以及一个经过验证的安全模型。在这些基础上,J2EE又增加了对
EJB(企业级JAVA组件)、JAVA SERVLETS、JAVA服务器页面(JSPS)和XML技术的支持。
J2EE技术之所以赢得某体广泛重视的原因之一就是EJB(Enterprise Java Bean是一種類似與WEB的容器)。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化
了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时以及如何与它们的容器进行交互作用。容器负责
提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池以及容错性。
2.優點:
a、 基于JAVA 技术,平台无关性表现突出
b、 开放的标准,许多大型公司已经实现了对该规范支持的应用服务器。如BEA,IBM,ORACLE等。
c、 提供相当专业的通用软件服务。
d、 提供了一个优秀的企业级应用程序框架,对快速高质量开发打下基础
J2EE是由SUN 公司开发的一套企业级应用规范。现在最高版本是1.6。支持J2EE的应用服务器有IBM WEBSPHERE
APPLICATION SERVER,BEA WEBLOGIC SERVER,JBOSS,ORACLE APPLICATION SERVER,SUN ONE APPLICATION SERVER 等。
3.中間件與容器的概念:
中间件:
中间件处在操作系统和更高一级应用程序之间。他充当的功能是:将应用程序运行环境与操作系统隔离,从而实现应用程序开发者不必为更多系统问题忧虑,而直接关注该应用程序在解决问题上的能力. 容器就是充当中间件的角色
a.WEB容器;
给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,使JSP,SERVLET直接更容器中的环境变量接口交互,不必关注其它系统问题。主要有WEB服务器来实现。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。该容器提供的接口严格遵守J2EE规范中的WEB APPLICATION 标准。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器。
b.Enterprise java bean 容器。
更具有行业领域特色。他提供给运行在其中的组件EJB各种管理功能。只要满足J2EE规范的EJB放入该容器,马上就会被容器进行高效率的管理。并且可以通过现成的接口来获得系统级别的服务。例如邮件服务、事务管理。
WEB容器和EJB容器在原理上是大体相同的,更多的区别是被隔离的外界环境。WEB容器更多的是跟基于HTTP的请求打交道。
而EJB容器不是。它是更多的跟数据库、其它服务打交道。但他们都是把与外界的交互实现从而减轻应用程序的负担。
例如SERVLET不用关心HTTP的细节,直接引用环境变量session,request,response就行、EJB不用关心数据库连接速度、
各种事务控制,直接由容器来完成。
摘自:http://baike.baidu.com/view/1507.htm
J2EE簡介
最新推荐文章于 2024-09-10 10:21:38 发布