程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> J2EE、J2SE、J2ME

J2EE、J2SE、J2ME

編輯:J2ME

隨著Internet網絡的迅速發展,基於互聯網的企業應用要求軟件平台具有開放性、分布性和平台無關性。於是就相繼出現了RPC/COM/CORBA等技術,但這些技術在實際應用中存在著許多不足和局限。它們的特定協議難以通過防火牆,因而不適於Web上的應用開發。為了進一步開發基於Web的應用,出現了Sun公司的Sun ONE(Open Net Environment 開發網絡環境)和Microsoft公司的.Net等Web 服務技術體系。

Sun ONE體系結構以Java語言為核心,包括J2SE/J2EE/J2ME和一系列的標准、技術及協議。它包括Sun獨有的iPlanet軟件系列,其中有在市場上受歡迎的LDAP目錄服務器軟件,以及Forte for Java——便於在任何環境下書寫Java 語言的軟件工具。我們很容易就能從網上免費獲得和使用包括Java 集成開發環境、Java數據庫和中間件(Application Server)服務器等產品,以及它們的源代碼。Sun ONE更接近或能滿足互聯網在智能化Web服務方面對分布性、開發性和平台無關性的要求。

隨著Java技術的不斷發展,它根據市場進一步細分為:針對企業網應用的J2EE(Java 2 EntERPrise Edition)、針對普通PC應用的J2SE(Java 2 Standard Edition)和針對嵌入式設備及消費類電器的J2ME(Java 2 Micro Edition)三個版本。本文就Sun ONE的Java核心應用——J2SE/J2EE/J2ME作一些介紹。


J2EE技術應用


J2EE是Sun公司推出的一種全新概念的模型,比傳統的互聯網應用程序模型更有優勢。

J2EE模型

J2EE的應用編程模型(J2EE Blueprints)提供了一種用於實施基於J2EE多層應用的文檔和實例套件的體系模型,簡化了這項復雜的工作。它被開發人員用作設計和優化組件,以便開發人員從策略上對開發工作進行分工。

J2EE應用編程模型要求開發者將自己的工作分成兩類:商業邏輯和表示邏輯,其余則由系統資源自動處理,不必為中間層管道進行編碼。這樣,開發人員就能將更多的時間花在商業邏輯和表示邏輯上。對重視縮短項目周期的公司來說,這種轉變深受歡迎。

J2EE平台

J2EE平台是運行J2EE應用的標准環境,由J2EE部署規范(一套所有J2EE平台產品都必須支持的標准)、IETF標准集和CORBA標准組成。最新的J2EE平台還添加了JavaBean組件模型。開發人員可以利用JavaBean組件模型來自定義Java類實例,並可通過已定義的事件訪問Java類。

J2EE支持EJB,因此開發人員可以執行多用戶交易功能。當在J2EE服務器上運行時,Enterprise JavaBeans將應用邏輯分成可再利用和可擴展的代碼段。Enterprise JavaBeans並不是新特征,但是通過定義標准客戶端和服務API,J2EE增強了它的能力和可移植性。

EJB在服務器的一個容器內運行,提供所有典型的中間層服務,如事務管理、安全、遠程客戶連接、生存周期管理和數據庫連接緩沖。為了讓事務系統在存在EJB容器的情況下運行,開發人員只需在部署描述文件中定義Beans的事務屬性即可。

J2EE通過定義一組標准的結構來實現它的優勢,例如:

1.J2EE Application Programming Model,是一種用於開發多層次、瘦型客戶用戶程序的標准設計模型;

2. J2EE Platform,是一個標准的平台,用來整合J2EE的應用程序,並指定一系列的接口和方法;

3. J2EE Compatibility Test Suite,是一套兼容測試組件,用來檢測產品是否同J2EE平台兼容;

4.J2EE Reference Implementation,用來示范J2EE的能力。

J2EE服務器

Sun的J2EE服務器通過Java 命名和目錄接口(JNDI)、認證、HTTP及與Enterprise JavaBeans兼容的能力,提供命名和目錄服務。JNDI是Java平台的一種標准擴展版,向企業內的命名和目錄服務提供具有Java功能的,帶有統一接口的應用,包括LDAP。

J2EE服務器還利用了Java Servlet技術。Java Servlet可以看作是運行在服務器上的一個小程序,它向開發人員提供以組件為基礎創建基於Web應用的、獨立於平台的方法。它不像利用CGI那樣具有性能局限。Java Servlet是一種擴展Web服務器功能的簡單技巧。由於它是用Java編寫的,因而能夠訪問整個Java API庫,也包括用於訪問企業數據庫的JDBC API。

JSP是Java Servlet的一種擴展。Java Servlet提供開發和顯示來自服務器的交互式Web頁。如今JSP又有了進一步的改進,它使得創建和支持靜態模板和動態內容相結合的Html和XML頁面更加容易。

安全性

J2EE平台定義了一種標准的公開存取控制規則,當程序在企業平台上開發時就已被程序師定義和解釋了。J2EE也需要提供一個標准的注冊機制,以便應用程序不會將這些注冊機制和邏輯相混合,從而使相同的工作執行於大量的不同環境中時並不需要改變源代碼。例如:J2EE應用程序開發人員可以指定幾個安全級別,當用戶訪問數據時,他們可寫出代碼來檢查當前用戶權限的級別。在開發階段,開發人員賦予多組用戶適當的安全級,使應用程序在執行限制操作之前能夠容易的判斷限制級。

J2EE 平台是Java技術企業級應用的最佳平台,它可以讓程序員迅速、快捷地開發和分布企業級應應用程序。以下便是它的相關技術:

1.Enterprise JavaBeans Architecture,企業級JavaBeans 定義了一個應用程序接口。它可以使程序員迅速開發、發布和管理跨平台的、基於組件的企業級應用程序。

2.JavaServer Pages,JSP 技術提供了一種簡單、快速的方法來創建動態網頁。通過它,可以快速地開發基於Web的應用程序,並且這些應用程序都是與平台無關的。因為JSP與ASP很相似,所以熟悉ASP的人學習它就很容易了。

3.Java Servlet,提供了應用程序接口。通過它可以簡單快速地開發並擴展服務器功能。就發展趨勢來看,它將來有可能取代CGI。

4.J2EE Connector,提供了一種標准結構來聯接不同的企業信息平台。

5.Java Naming and Directory Interface(JNDI),在Java 平台與商業信息之間,JNDI提供了統一、無縫的標准化連接。通過使用JNDI,程序員可以在企業多命名與目錄服務之間傳送Java 應用程序。

6.Java Interface Definition Language(JIDL),通過使用CORBA,可以提供協同工作的能力。JIDL包括一個IDL-to-Java 編譯器和支持IIOP(Internet Inter-Orb Protocol)的ORB。

7.JDBC,幾乎是為所有的數據庫提供了統一的接口,同時可以創建高級工具和接口。

8.Java Message Service(JMS),它幾乎規范了所有企業級消息服務,如可靠查詢、發布消息、訂閱雜志等各種各樣的PUSS/PULL技術的應用,並且為它們提供了一個標准接口。

9.Java Transaction API(JTA),為分布式系統中可處理的應用程序規定了一個高級的管理規范。

10.JavaMail,JavaMail應用程序接口提供了一整套模擬郵件系統的抽象類。通過JavaMail,可以創建郵件或消息應用程序。

11.RMI-IIOP,使用它就可以只用Java 技術和Java RMI接口開發客戶機與服務器的遠程接口。

J2EE使用固定的文件格式捆綁某個模塊:用.ear文件捆綁J2EE應用程序;用.jar捆綁Enterprise Bean。例如,一個.ear文件包含一個.XML文件作為其分布描述,還包含一個或多個.jar和.war文件;一個.jar文件除了包含它的分布描述外,還包含了作為Enterprise bean的.class文件。

J2EE應用程序的開發階段分為四步:1.Enterprise Bean創建;2.Web Component創建;3.J2EE應用程序裝配;4.J2EE應用程序分布。以下是J2EE兼容產品部分列表:

BEA WebLogic Server 6.0、Borland App Server、HP Bluestone Total-e-Server、IBM WebSphere Application Server、IONA iPortal Application Server、iPlanet Application Server、Macromedia JRun Server、Oracle 9i Application Server、SilverStrean Application Server、Sybase EAServer、TogetherSoft ControlCenter、Java 2 SDK Enterprise Edition。

J2ME技術的應用


J2ME(Java 2 Platform Micro Edition)是為無線電子市場所設計的,包括JVM規范和API規范。其API規范是基於J2SE(Java 2 Standard Editon)的。J2ME 定義了一套合適的類庫和虛擬機技術。這些技術可以使用戶、服務提供商和設備制造商通過物理(有線)連接或無線連接,按照需要隨時使用豐富的應用程序。

J2ME又被稱為Java 2 微型版,被使用在各種各樣的消費電子產品上,例如智能卡、手機、PDA、電視機頂盒等方面。當然了,J2ME也提供了Java語言一貫的特性,那就是跨平台和安全網絡傳輸。它使用了一系列更小的包,而且Javax.microedition.io 為J2SE包的子集。J2ME可以升級到J2SE和J2EE。

在J2ME出現之前,我們更多接觸到的是Java卡(Java Card)、嵌入式Java(Embedded Java)和實時Java(Real Time Java)等。其中Java卡是針對SIM卡、智能卡等設備而定制的最小Java子集,比J2ME還要小,移植性也不強。嵌入式Java則針對特殊用戶自行配置Java類庫和VM(Virtual Machine,虛擬機)。它對資源需求極小,可運行在無圖形用戶接口和網絡的設備上,可以添加用戶專用的API,但是它就無法移植。實時Java是由IBM領導的實時定制Java專家組負責實施的,現在還在不斷完善中。不過,從嚴格意義上來說,它們都不是真正的J2ME。

像其它版本一樣,J2ME具有很多Java技術特性,主要有:

1.可以在各種支持Java的設備上運行;

2.代碼短小;

3.充分利用Java語言的優勢;

4.安全性好;

5.用J2ME實現的應用可以方便地升級到J2SE、J2EE。

J2ME的配置和框架

為了支持用戶和嵌入式市場提出的靈活性和可定制性要求,J2ME被設計得更加模塊化和可縮放化。J2ME在設備原有的操作系統上建造了3層軟件來實現這種要求:

1.JVM層,這層基於宿主操作系統,按照某一種J2ME的配置,實現了JVM。

2.配置層,這層對於用戶可見度要低一些,但對框架層非常重要。它針對“水平”市場的需求,定義了Java虛擬機的最小功能集和Java類庫的最小集合。在某種意義上,配置層定義了開發者在所有設備上都可以使用Java特性和類庫的“最小公分母”。

3.框架層,這層對於用戶和應用程序提供者來說是最常見的。它針對“垂直”市場的需求,定義了Java虛擬機的最小功能集和Java類庫的最小集合。其框架是基於特定的配置層實現的。只要設備支持相同的框架層,針對特定框架層開發的應用程序就可以移植到其它設備上。一個設備可以支持多個框架層。

在J2ME設備中,JVM與配置層緊密相連,它們體現了每一類設備的基本功能。框架層針對不同的設備,在配置層的基礎上規定了附加的API。為了滿足不斷更新的應用程序,框架層可以擴充新的Java庫類。在不遠的將來,隨著新設備的不斷出現,J2ME技術將提供范圍廣泛的框架層、配置層和VM。JCP(Java Community Process)可以為客戶和開發商提供規范。根據JCP的定義,J2ME目前的一種配置層是“面向連接的設備配置”層(Connected Device Configuration),它采用典型的Java虛擬機技術。這種全功能的VM包含了基於台式機系統上的虛擬機的所有功能,適用於擁有至少幾兆字節內存的設備。對於無線設備和其它內存不足的設備,J2ME采用“面向連接的受限設備配置”(CLDC)技術。

KVM是J2ME的核心特征。它是一個可移植性非常高的JVM,專用於內存小、資源有限、能上網的設備,例如蜂窩電話、尋呼機和個人組織器等。這些器件一般都含有16或32位的處理器,最低128KB內存。KVM能夠被靈活應用到各種行業、各種類型的設備上,並能夠適應這些設備的多樣化所帶來的問題,比如處理器的耗電量、內存的大小、設備和應用程序的特殊功能等問題。

CLDC技術

CLDC定義了目標Java平台,該平台基於小型的、資源較少的、內存僅有160~512K的設備。CLDC是由KVM和用在蜂窩電話、數字產品、雙向尋呼機、個人組織器和家用電器等核心庫類及接口組成。使用CLDC技術有很多優點:

1.跨平台,這點保留了Java一貫的特點,應用程序不會隨著平台差異而產生變化。

2.動態性,這點也是很吸引人的,可以根據需要下載自己喜歡的應用程序和服務,並且可以和其它的CLDC設備通信。

3.安全性,Java 本身的特點造就了這一特性。

與 J2SE相比,CLDC缺少下列所說的特征:

1.AWT(抽象窗口開發包),Swing或其它圖形庫;

2.用戶定義類裝載器;

3.類實例的最終化;

4.弱的引用;

5.RMI;

6.Reflection(映射)。

CLDC有四個包:java.lang、java.util、java.io和javax.microedition。除了Javax.microedition包以外,其它的幾個包都是J2SE包的核心子集。CLDC采用這些J2SE類庫,但是把其中一些在微型設備中用不到類、屬性和方法去掉了。

J2ME定義兩個配置:Connected Device Configuration(連接設備配置,CDC)和限制性更強的Connected Limited Device Configuration(有限連接設備配置,CLDC)。

J2SE技術的應用


Java 2標准版是一種開發和部署平台,提供了編寫桌面、工作站應用程序所有必需的功能。J2SE軟件是快速開發、部署關鍵任務和企業應用程序的首選解決方案。J2SE 1.4版本是基於Java跨平台技術和強有力的安全模塊而開發的,其最新的特征和功能極大地提高了Java語言的伸縮性、靈活性、適用性,以及可靠性。

J2SE 1.4 特點:

1.良好的計算性能和縮放能力。

J2SE 1.4版是一個快速開發和配置跨平台的企業級應用與服務的綜合性平台。它提升了Java計算的性能與縮放能力,代表了Java技術的大跨步進展。有了J2SE 1.4版,企業就可以通過更簡易的步驟、花費更少的時間,采用Java技術開發與配置要求更高的應用了。J2SE 1.4版在Java客戶機應用方面得到了重大性能提升。基於Swing的Java小程序和應用程序在圖形用戶界面(GUI)的響應速度上也大有提高。

2.跨平台。

J2SE 1.4版是一個具有綜合性能的平台,能使一個完整的、可縮放的高性能應用配置在任何種類的平台上。

3.支持Web服務。

J2SE 1.4版與以前各J2SE版全面兼容。J2SE 1.4版對SSL、LDAP和CORBA等業界標准技術也給予支持,因此保證了在不同平台、系統和環境間的互操作能力。J2SE 1.4版支持XML技術和一整套安全服務,因此為基於各類標准的可互操作應用與服務的創建奠定了重要基礎。有了J2SE 1.4版與Java Web Services Developer Pack的結合,開發商就能創建、測試和配置Web服務了。

4.完整性。J2SE 1.4版還是一個完整的開發環境。開發商可基於這一環境創建功能豐富的交互式應用。這些應用可以配置在任何平台上。J2SE 1.4具有新的GUI控制功能、快速的Java 2DT圖形功能、支持國際化與本地化擴展和新的配置選項,並對Windows XP提供擴展支持。

總之,J2SE 1.4版是多種不同風格軟件的開發基礎,包括客戶端Java小程序和應用程序,以及獨立的服務器應用程序等。J2SE 1.4版還是J2ME的基礎,是J2EE執行程序的推動力。

Java之所以能夠發展得很快,是因為互聯網的發展非常快。Java可以和浏覽器結合在一起,因而很自然地在桌面系統得到廣泛應用。從計算的結構來看,Java主要分三大類:第一是服務器端,這裡就有了J2EE企業版;第二是桌面PC,這一類用的是J2SE標准版;第三就是掌上電腦、移動設備,用的都是J2ME。但是,大部分非企業級軟件還是在J2SE上開發的比較多。首先,這是因為很多的應用軟件都是在J2SE上開發的;其次,J2SE是和J2EE兼容的,企業版是在標准版上的擴充,在J2SE的版本上開發的軟件,拿到企業的平台上是一樣可以運行的;再次,一般開發還是在J2SE的環境上,只是說J2ME提供微型版的一個環境。在J2SE上虛擬出一個環境,開發出來的應用軟件是可以拿到微型版上運行的。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved