浅析J2EE、J2SE和J2ME |
作者:佚名 发布时间:2005-04-02 来源:不详
|
随着Internet网络的迅 和平台无关性。于是就相继 多不足和局限。它们的特定 开发基于Web的应用,出现 Microsoft公司的.NET等Web
|
速发展,基于互联网的企业应用 出现了RPC/COM/CORBA等技术, 协议难以通过防火墙,因而不适 了Sun公司的Sun ONE(Open Net 服务技术体系。
|
要求软件平台具有开放性、分布性 但这些技术在实际应用中存在着许 于Web上的应用开发。为了进一步 Environment 开发网络环境)和
|
Sun ONE体系结构以Jav 。它包括Sun独有的iPlanet Forte for Java——便于在 费获得和使用包括Java 集 等产品,以及它们的源代码 、开发性和平台无关性的要
|
a语言为核心,包括J2SE/J2EE/J 软件系列,其中有在市场上受欢 任何环境下书写Java 语言的软 成开发环境、Java数据库和中间 。Sun ONE更接近或能满足互联 求。
|
2ME和一系列的标准、技术及协议 迎的LDAP目录服务器软件,以及 件工具。我们很容易就能从网上免 件(Application Server)服务器 网在智能化Web服务方面对分布性
|
随着Java技术的不断发 Enterprise Edition)、针 设备及消费类电器的J2ME( 用——J2SE/J2EE/J2ME作一
|
展,它根据市场进一步细分为: 对普通PC应用的J2SE(Java 2 S Java 2 Micro Edition)三个版 些介绍。
|
针对企业网应用的J2EE(Java 2 tandard Edition)和针对嵌入式 本。本文就Sun ONE的Java核心应
|
J2EE是Sun公司推出的一种全新概念
|
的模型,比传统的互联网应用程序模型更有优势。
|
J2EE的应用编程模型(J2EE Bluepri 和实例套件的体系模型,简化了这项复杂 发人员从策略上对开发工作进行分工。
|
nts)提供了一种用于实施基于J2EE多层应用的文档 的工作。它被开发人员用作设计和优化组件,以便开
|
J2EE应用编程模型要求 统资源自动处理,不必为中 辑和表示逻辑上。对重视缩
|
开发者将自己的工作分成两类: 间层管道进行编码。这样,开发 短项目周期的公司来说,这种转
|
商业逻辑和表示逻辑,其余则由系 人员就能将更多的时间花在商业逻 变深受欢迎。
|
J2EE平台是运行J2EE应用的标准环境 持的标准)、IETF标准集和CORBA标准组 发人员可以利用JavaBean组件模型来自定
|
,由J2EE部署规范(一套所有J2EE平台产品都必须支 成。最新的J2EE平台还添加了JavaBean组件模型。开 义Java类实例,并可通过已定义的事件访问Java类。
|
J2EE支持EJB,因此开 Enterprise JavaBeans将应 不是新特征,但是通过定义
|
发人员可以执行多用户交易功能 用逻辑分成可再利用和可扩展的 标准客户端和服务API,J2EE增
|
。当在J2EE服务器上运行时, 代码段。Enterprise JavaBeans并 强了它的能力和可移植性。
|
EJB在服务器的一个容 客户连接、生存周期管理和 开发人员只需在部署描述文
|
器内运行,提供所有典型的中间 数据库连接缓冲。为了让事务系 件中定义Beans的事务属性即可
|
层服务,如事务管理、安全、远程 统在存在EJB容器的情况下运行, 。
|
J2EE通过定义一组标准的结构来实现它的优势,例如: |
1.J2EE Application P 标准设计模型;
|
rogramming Model,是一种用于
|
开发多层次、瘦型客户用户程序的
|
2. J2EE Platform,是一个标准的平 和方法;
|
台,用来整合J2EE的应用程序,并指定一系列的接口
|
3. J2EE Compatibility Test Suite 台兼容;
|
,是一套兼容测试组件,用来检测产品是否同J2EE平
|
4.J2EE Reference Imp
|
lementation,用来示范J2EE的
|
能力。
|
Sun的J2EE服务器通过J JavaBeans兼容的能力,提 的命名和目录服务提供具有
|
ava 命名和目录接口(JNDI)、 供命名和目录服务。JNDI是Java Java功能的,带有统一接口的应
|
认证、HTTP及与Enterprise 平台的一种标准扩展版,向企业内 用,包括LDAP。
|
J2EE服务器还利用了Java Servlet技 小程序,它向开发人员提供以组件为基础 用CGI那样具有性能局限。Java Servlet Java编写的,因而能够访问整个Java API
|
术。Java Servlet可以看作是运行在服务器上的一个 创建基于Web应用的、独立于平台的方法。它不像利 是一种扩展Web服务器功能的简单技巧。由于它是用 库,也包括用于访问企业数据库的JDBC API。
|
JSP是Java Servlet的 页。如今JSP又有了进一步 XML页面更加容易。
|
一种扩展。Java Servlet提供开 的改进,它使得创建和支持静态
|
发和显示来自服务器的交互式Web 模板和动态内容相结合的HTML和
|
J2EE平台定义了一种标 定义和解释了。J2EE也需要 辑相混合,从而使相同的工 用程序开发人员可以指定几 权限的级别。在开发阶段, 之前能够容易的判断限制级
|
准的公开存取控制规则,当程序 提供一个标准的注册机制,以便 作执行于大量的不同环境中时并 个安全级别,当用户访问数据时 开发人员赋予多组用户适当的安 。
|
在企业平台上开发时就已被程序师 应用程序不会将这些注册机制和逻 不需要改变源代码。例如:J2EE应 ,他们可写出代码来检查当前用户 全级,使应用程序在执行限制操作
|
J2EE 平台是Java技术企业级应用的 企业级应应用程序。以下便是它的相关技
|
最佳平台,它可以让程序员迅速、快捷地开发和分布 术:
|
1.Enterprise JavaBea 它可以使程序员迅速开发、
|
ns Architecture,企业级JavaB 发布和管理跨平台的、基于组件
|
eans 定义了一个应用程序接口。 的企业级应用程序。
|
2.JavaServer Pages,JSP 技术提供 可以快速地开发基于Web的应用程序,并 相似,所以熟悉ASP的人学习它就很容易
|
了一种简单、快速的方法来创建动态网页。通过它, 且这些应用程序都是与平台无关的。因为JSP与ASP很 了。
|
3.Java Servlet,提供 就发展趋势来看,它将来有
|
了应用程序接口。通过它可以简 可能取代CGI。
|
单快速地开发并扩展服务器功能。
|
4.J2EE Connector,提
|
供了一种标准结构来联接不同的
|
企业信息平台。
|
5.Java Naming and Directory Inte 供了统一、无缝的标准化连接。通过使用 Java 应用程序。
|
rface(JNDI),在Java 平台与商业信息之间,JNDI提 JNDI,程序员可以在企业多命名与目录服务之间传送
|
6.Java Interface Def 能力。JIDL包括一个IDL-to 。
|
inition Language(JIDL),通过 -Java 编译器和支持IIOP(Inte
|
使用CORBA,可以提供协同工作的 rnet Inter-Orb Protocol)的ORB
|
7.JDBC,几乎是为所有的数据库提供
|
了统一的接口,同时可以创建高级工具和接口。
|
8.Java Message Service(JMS),它 消息、订阅杂志等各种各样的PUSS/PULL
|
几乎规范了所有企业级消息服务,如可靠查询、发布 技术的应用,并且为它们提供了一个标准接口。
|
9.Java Transaction A 理规范。
|
PI(JTA),为分布式系统中可处
|
理的应用程序规定了一个高级的管
|
10.JavaMail,JavaMail ,可以创建邮件或消息应用
|
应用程序接口提供了一整套模拟 程序。
|
邮件系统的抽象类。通过JavaMail
|
11.RMI-IIOP,使用它就可以只用Java 口。
|
技术和Java RMI接口开发客户机与服务器的远程接
|
J2EE使用固定的文件格式捆绑某个模 Enterprise Bean。例如,一个.ear文件 个.jar和.war文件;一个.jar文件除了包 的.class文件。
|
块:用.ear文件捆绑J2EE应用程序;用.jar捆绑 包含一个.xml文件作为其分布描述,还包含一个或多 含它的分布描述外,还包含了作为Enterprise bean
|
J2EE应用程序的开发阶 3.J2EE应用程序装配;4.J2
|
段分为四步:1.Enterprise Bea EE应用程序分布。以下是J2EE兼
|
n创建;2.Web Component创建; 容产品部分列表:
|
BEA WebLogic Server WebSphere Application Se Application Server、Macr SilverStrean Application Java 2 SDK Enterprise Ed
|
6.0、Borland App Server、HP rver、IONA iPortal Applicati omedia JRun Server、Oracle 9 Server、Sybase EAServer、To ition。
|
Bluestone Total-e-Server、IBM on Server、iPlanet i Application Server、 getherSoft ControlCenter、
|
J2ME(Java 2 Platfor API规范。其API规范是基于 和虚拟机技术。这些技术可 连接,按照需要随时使用丰
|
m Micro Edition)是为无线电 J2SE(Java 2 Standard Editon 以使用户、服务提供商和设备制 富的应用程序。
|
子市场所设计的,包括JVM规范和 )的。J2ME 定义了一套合适的类库 造商通过物理(有线)连接或无线
|
J2ME又被称为Java 2 、PDA、电视机顶盒等方面 全网络传输。它使用了一系 可以升级到J2SE和J2EE。
|
微型版,被使用在各种各样的消 。当然了,J2ME也提供了Java语 列更小的包,而且Javax.microe
|
费电子产品上,例如智能卡、手机 言一贯的特性,那就是跨平台和安 dition.io 为J2SE包的子集。J2ME
|
在J2ME出现之前,我们 Java)和实时Java(Real T 最小Java子集,比J2ME还要 和VM(Virtual Machine, 设备上,可以添加用户专用 Java专家组负责实施的,现 J2ME。
|
更多接触到的是Java卡(Java C ime Java)等。其中Java卡是针 小,移植性也不强。嵌入式Java 虚拟机)。它对资源需求极小, 的API,但是它就无法移植。实 在还在不断完善中。不过,从严
|
ard)、嵌入式Java(Embedded 对SIM卡、智能卡等设备而定制的 则针对特殊用户自行配置Java类库 可运行在无图形用户接口和网络的 时Java是由IBM领导的实时定制 格意义上来说,它们都不是真正的
|
像其它版本一样,J2ME具有很多Java技术特性,主要有: |
5.用J2ME实现的应用可以方便地升级到J2SE、J2EE。 |
为了支持用户和嵌入式市场提出的灵 缩放化。J2ME在设备原有的操作系统上建
|
活性和可定制性要求,J2ME被设计得更加模块化和可 造了3层软件来实现这种要求:
|
1.JVM层,这层基于宿主操作系统,按照某一种J2ME的配置,实现了JVM。 |
2.配置层,这层对于用 需求,定义了Java虚拟机的 开发者在所有设备上都可以
|
户可见度要低一些,但对框架层 最小功能集和Java类库的最小集 使用Java特性和类库的“最小公
|
非常重要。它针对“水平”市场的 合。在某种意义上,配置层定义了 分母”。
|
3.框架层,这层对于用 ,定义了Java虚拟机的最小 。只要设备支持相同的框架 个设备可以支持多个框架层
|
户和应用程序提供者来说是最常 功能集和Java类库的最小集合。 层,针对特定框架层开发的应用 。
|
见的。它针对“垂直”市场的需求 其框架是基于特定的配置层实现的 程序就可以移植到其它设备上。一
|
在J2ME设备中,JVM与配置层紧密相 不同的设备,在配置层的基础上规定了附 以扩充新的Java库类。在不远的将来,随 架层、配置层和VM。JCP(Java Communit 的定义,J2ME目前的一种配置层是“面向 Configuration),它采用典型的Java虚 的虚拟机的所有功能,适用于拥有至少几 设备,J2ME采用“面向连接的受限设备配
|
连,它们体现了每一类设备的基本功能。框架层针对 加的API。为了满足不断更新的应用程序,框架层可 着新设备的不断出现,J2ME技术将提供范围广泛的框 y Process)可以为客户和开发商提供规范。根据JCP 连接的设备配置”层(Connected Device 拟机技术。这种全功能的VM包含了基于台式机系统上 兆字节内存的设备。对于无线设备和其它内存不足的 置”(CLDC)技术。
|
KVM是J2ME的核心特征 上网的设备,例如蜂窝电话 ,最低128KB内存。KVM能够 的多样化所带来的问题,比 题。
|
。它是一个可移植性非常高的JV 、寻呼机和个人组织器等。这些 被灵活应用到各种行业、各种类 如处理器的耗电量、内存的大小
|
M,专用于内存小、资源有限、能 器件一般都含有16或32位的处理器 型的设备上,并能够适应这些设备 、设备和应用程序的特殊功能等问
|
CLDC定义了目标Java平台,该平台基 。CLDC是由KVM和用在蜂窝电话、数字产 及接口组成。使用CLDC技术有很多优点:
|
于小型的、资源较少的、内存仅有160~512K的设备 品、双向寻呼机、个人组织器和家用电器等核心库类
|
1.跨平台,这点保留了
|
Java一贯的特点,应用程序不会
|
随着平台差异而产生变化。
|
2.动态性,这点也是很 以和其它的CLDC设备通信。
|
吸引人的,可以根据需要下载自
|
己喜欢的应用程序和服务,并且可
|
1.AWT(抽象窗口开发包),Swing或其它图形库; |
CLDC有四个包:java.lang、java.ut javax.microedition包以外,其它的几个 但是把其中一些在微型设备中用不到类、
|
il、java.io和javax.microedition。除了 包都是J2SE包的核心子集。CLDC采用这些J2SE类库, 属性和方法去掉了。
|
J2ME定义两个配置:Con 的Connected Limited Devi
|
nected Device Configuration( ce Configuration(有限连接设
|
连接设备配置,CDC)和限制性更强 备配置,CLDC)。 J2SE技术的应用
|
Java 2标准版是一种开发和部署平台 。J2SE软件是快速开发、部署关键任务和 Java跨平台技术和强有力的安全模块而开 伸缩性、灵活性、适用性,以及可靠性。
|
,提供了编写桌面、工作站应用程序所有必需的功能 企业应用程序的首选解决方案。J2SE 1.4版本是基于 发的,其最新的特征和功能极大地提高了Java语言的
|
J2SE 1.4版是一个快速开发和配置跨 Java计算的性能与缩放能力,代表了Java 过更简易的步骤、花费更少的时间,采用 在Java客户机应用方面得到了重大性能提 界面(GUI)的响应速度上也大有提高。
|
平台的企业级应用与服务的综合性平台。它提升了 技术的大跨步进展。有了J2SE 1.4版,企业就可以通 Java技术开发与配置要求更高的应用了。J2SE 1.4版 升。基于Swing的Java小程序和应用程序在图形用户
|
J2SE 1.4版是一个具有 何种类的平台上。
|
综合性能的平台,能使一个完整
|
的、可缩放的高性能应用配置在任
|
J2SE 1.4版与以前各J2SE版全面兼容 给予支持,因此保证了在不同平台、系统 一整套安全服务,因此为基于各类标准的 J2SE 1.4版与Java Web Services Develo 服务了。
|
。J2SE 1.4版对SSL、LDAP和CORBA等业界标准技术也 和环境间的互操作能力。J2SE 1.4版支持XML技术和 可互操作应用与服务的创建奠定了重要基础。有了 per Pack的结合,开发商就能创建、测试和配置Web
|
4.完整性。J2SE 1.4版还是一个完整 交互式应用。这些应用可以配置在任何平 2DT图形功能、支持国际化与本地化扩展
|
的开发环境。开发商可基于这一环境创建功能丰富的 台上。J2SE 1.4具有新的GUI控制功能、快速的Java 和新的配置选项,并对Windows XP提供扩展支持。
|
总之,J2SE 1.4版是多种不同风格软 以及独立的服务器应用程序等。J2SE 1.4
|
件的开发基础,包括客户端Java小程序和应用程序, 版还是J2ME的基础,是J2EE执行程序的推动力。
|
Java之所以能够发展得很快,是因为 ,因而很自然地在桌面系统得到广泛应用 务器端,这里就有了J2EE企业版;第二是 脑、移动设备,用的都是J2ME。但是,大 ,这是因为很多的应用软件都是在J2SE上 准版上的扩充,在J2SE的版本上开发的软 般开发还是在J2SE的环境上,只是说J2ME 开发出来的应用软件是可以拿到微型版上
|
互联网的发展非常快。Java可以和浏览器结合在一起 。从计算的结构来看,Java主要分三大类:第一是服 桌面PC,这一类用的是J2SE标准版;第三就是掌上电 部分非企业级软件还是在J2SE上开发的比较多。首先 开发的;其次,J2SE是和J2EE兼容的,企业版是在标 件,拿到企业的平台上是一样可以运行的;再次,一 提供微型版的一个环境。在J2SE上虚拟出一个环境, 运行的。
| |
|
|
|
|