j2ee與java web的區(qū)別
J2EE技術之所以贏得廣泛重視的原因之一就是EJB.它提供了一個框架來開發(fā)和實施分布式商務邏輯,下面是小編整理的關于j2ee與java web的區(qū)別,歡迎大家參考!
1、Java
毫無疑問這就是門語言和C、C++、C#一樣沒什么好說的。
2、Java SE和Java EE
多數編程語言都有預選編譯好的類庫以支持各種特定的功能,在Java中,類庫以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的應用。
Java2平臺包括標準版(J2SE)、企業(yè)版(J2EE)和微縮版(J2ME)三個版本:
Standard Edition(標準版) J2SE 包含那些構成Java語言核心的類。
比如:數據庫連接、接口定義、輸入/輸出、網絡編程
Enterprise Edition(企業(yè)版) J2EE 包含J2SE 中的類,并且還包含用于開發(fā)企業(yè)級應用的類。
比如:EJB、servlet、JSP、XML、事務控制
Micro Edition(微縮版) J2ME 包含J2SE中一部分類,用于消費類電子產品的軟件開發(fā)。
比如:呼機、智能卡、手機、PDA、機頂盒
他們的范圍是:J2SE包含于J2EE中,J2ME包含了J2SE的核心類,但新添加了一些專有類
應用場合,API的覆蓋范圍各不相同。
籠統(tǒng)的講,可以這樣理解:
J2SE是基礎;
壓縮一點,再增加一些CLDC等方面的特性就是J2ME;
擴充一點,再增加一些EJB等企業(yè)應用方面的特性就是J2EE。
3、Java Web和Java EE
Java EE是企業(yè)級應用平臺,Java Web是指所有用于web開發(fā)的Java技術。
與傳統(tǒng)的CS(客戶端與服務器端)架構相比,J2EE Web程序服務器提供了很多額外的技術支持。而且這些技術是一般Web應用程序都需要用到的,但是Web程序開發(fā)人員不需要再另行開發(fā),只需要直接拿過來使用即可。具體的來說,在Web應用中主要通過調用現成的API來完成這個功能。而且使用這些技術時,基本上沒有什么技術含量。因為在具體工作中使用這些技術都是采用基本固定的格式。命名技術就是其中一個典型的代表。在這篇文章中,筆者根據自己的經驗,談談這方面使用過程中的注意點。
一、 與傳統(tǒng)架構之間的區(qū)別。
在使用這個技術之前,筆者認為開發(fā)人員至少需要知道,在Web架構與CS架構之間的區(qū)別。只有如此,才能夠更加全面的了解采用新技術所能夠帶來的優(yōu)勢。故筆者一開始就著重強調兩者之間的差異。
在應用程序開發(fā)中,如果一個類A需要調用另外一個類B,則類A需要知道類B的源程序,然后在其中新建一個類B的實例,才能夠實現調用。而且當一個程序改變時,還需要重新編譯。從這可以看出,類與類之間的連接需要通過實例來完成,他們之間的連接就比較混亂。
而采用J2EE命名服務則不需要這么麻煩。簡單的說,JE22命名服務器提供了應用構件程序的命名環(huán)境。如果采用了這種技術的話,那么實現類調用時,就可以不通過實例來完成。做一個形象的比喻,命名服務就好像是一個地址簿。當開發(fā)人員在程序開發(fā)時采用了新的構件或者新建了某個類,那么相關的信息就會都在這個地址簿中登記。作為開發(fā)人員的話,就不需要再去查找原始的類,只需要在這個地址簿中查找即可。顯然這方面了我們日常的開發(fā)工作,可以縮短開發(fā)的周期,同時簡化類之間的引用。最重要的是,如果以后被引用的類有變化時,不需要編譯整個應用程序,而只需要重編譯有變化的類即可。
二、 命名服務的核心環(huán)節(jié)解析。
J2EE命名服務提供各種應用構件程序的統(tǒng)一命名環(huán)境。其英文簡稱是JNDI。從這個英文名字中可以看到,這個命名服務包括兩層含義:命名和目錄接口。我們在了解這個技術的時候,如果從這兩個角度去理解,可能會更加簡單一點。JNDI簡化了高級Web程序類之間的查找調用。
從技術上來說,JNDI主要是通過API來實現的。JNDI API提供了Web構件進行標準目錄操作的方法。舉一個簡單的例子,可以將對象屬性和Java對象聯系在一起,或者通過對象屬性來查找Java對象。當我們在電話簿中查找某個電話的時候,會現在索引中找到某個人的名字。然后再從這個索引中打開對應的記錄,查找這個人的電話、住址等聯系信息。JNDI核心的工作思路就是如此。在上面筆者談到過,這些技術都是采用基本固定的調用格式。也就是說,JNDI已經被標準化。為此應用程序可以通過使用JNDI來訪問其他通用的命名服務。如支持常用的We命名協(xié)議、DNS等命名架構。筆者認為這點非常的重要。因為其支持多種命名結構,則可以與其他平臺的應用系統(tǒng),如C++等進行很好的系統(tǒng)的整合。
【j2ee與java web的區(qū)別】相關文章:
Java Web開發(fā)和J2EE的區(qū)別07-07
關于java-web的試卷06-25
java實現web服務器的方法10-14
JAVA和.NET開發(fā)過程中的區(qū)別10-25
Web Workers加速移動Web應用07-01
什么是J2EE07-05
j2ee介紹07-22
J2EE的概念08-23