j2se sdk和j2EE sdk,JDK,JKE的區別__jdk

來源:互聯網
上載者:User

j2se:   Java   2   Standard       Edition是java標準版  ,se是標準版平台
j2ee:   Java   2   Enterprise   Edition是java企業版   ,它除了包含標準版(se)中的任何組件,還增加了附加庫;
J2EE
J2EE   technology   and   its   component   based   model   simplifies   enterprise   development   and   deployment.The   J2EE   platform   manages   the   infrastructure   and   supports   the   Web   services   to   enable   development   of   secure,   robust   and   interoperable   business   applications.

j2ee是java的企業版本,它是標準版本之上的擴充。採用包括應用伺服器在內的三層架構。主要用於電子商務和企業與企業電子商務互連。有jsp,servlet,ejb等規範
j2se是基礎類庫,j2ee是架構,企業做web應用時通常要考慮到很多問題,比如效能問題(POOL的應用),擴充性,分布式相關交易,重用,事務等等,為了使企業的架構更加完美,更加穩定,效率更高,很多大的Team Dev都會想辦法解決上述問題,SUN以及其他的分布式領導廠商意識到不久的將來每個Team Dev都會重複創造出自己專用的解決方案,所以才衍生出J2EE架構,為了是使這些Team Dev能夠快速的實現上述解決方案,而把主要的精力放在商務程序上,應該差不多懂了吧。

 

簡單的說JDK是面向開發人員使用的SDK,它提供了Java的開發環境和運行環境。SDK是Software Development Kit 一般指軟體開發包,可以包括函數庫、編譯器等。
JDK就是Java Development Kit
JRE是Java Runtime Enviroment是指Java的運行環境,是面向Java程式的使用者,而不是開發人員。

如果安裝了JDK,會發同你的電腦有兩套JRE,一套位於 /jre 另外一套位於 C:/Program Files/Java/j2re1.4.1_01 目錄下,後面這套比前面那套少了Server端的Java虛擬機器,不過直接將前面那套的Server端Java虛擬機器複製過來就行了。而且在安裝JDK可以選擇是否安裝這個位於 C:/Program Files/Jav a 目錄下的JRE。如果你只安裝JRE,而不是JDK,那麼只會在 C:/Program Files/Java 目錄下安裝唯一的一套JRE。

JRE的地位就象一台PC機一樣,我們寫好的 Win32應用程式需要作業系統幫我們運行,同樣的,我們編寫的Java程式也必須要JRE才能運行。所以當你裝完JDK後,如果分別在硬碟上的兩個不同地方安裝了兩套JRE,那麼你可以想象你的電腦有兩台虛擬Java PC機,都具有運行Java程式的功能。所以我們可以說,只要你的電腦安裝了JRE,就可以正確運行Jav a應用程式。

1、為什麼Sun要讓JDK安裝兩套相同的JRE。這是因為JDK裡面有很多用Java所編寫的開發工具(如javac.exe、jar.exe等),而且都放置在 /lib/tools.jar 裡。從下面例子可以看出,先將tools.jar改名為tools1.jar,然後運行javac.exe,顯示如下結果: Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 這個意思是說,你輸入javac.exe與輸入 java -cp c:/jdk/lib/tools.jar com.sun.tools.javac.Main 是一樣的,會得到相同的結果。從這裡我們可以證明javac.exe只是一個封裝器(Wrapper),而製作的目的是為了讓開發人員免於輸入太長的指命。而且可以發現/lib目錄下的程式都很小,不大於2 9K,從這裡我們可以得出一個結論。就是JDK裡的工具幾乎是用Java所編寫,所以也是Java應用程式,因此要使用JDK所附的工具來開發Java程式,也必須要自行附一套JRE才行,所以位於C:/Program Files/Java目錄下的那套JRE就是用來運行一般Java程式用的。

2、如果一台電腦安裝兩套以上的JRE,誰來決定呢。這個重大任務就落在java.exe身上。Java.exe的工作就是找到合適的JRE來運行 Java程式。 Java.exe依照底下的順序來尋找JRE:自己的目錄下有沒有JRE;父目錄有沒有JRE;查詢註冊表: [HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment] 所以java.exe的運行結果與你的電腦裡面哪個JRE被執行有很大的關係。

3、介紹JVM JRE目錄下的Bin目錄有兩個目錄:server與client。這就是真正的jvm.dll所在。 jvm.dll無法單獨工作,當jvm.dll啟動後,會使用explicit的方法(就是使用Win32 API之中的LoadLibrary()與GetProcAddress()來載入輔助用的動態連結程式庫),而這些輔助用的動態連結程式庫(.dll)都必須位於jvm.dll所在目錄的父目錄之中。因此想使用哪個JVM,只需要設定PATH,指向JRE所在目錄底下的jvm.dll。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.