2010-09-15 117 views
6

我想問一個關於java web應用程序的問題。當我開始學習JSP時,我總是會聽說Java EE Web應用程序。但我不知道這個詞的實際含義。任何人都可以向我解釋這個詞嗎?謝謝。什麼是Java EE Web應用程序?

+0

[Java SE/EE/ME之間的差異]的可能重複(http://stackoverflow.com/questions/2857376/difference-between-java-se-ee-me) – 2010-09-16 01:36:10

回答

2

存在Java分佈的層次結構。

從Java ME開始 - 針對手機等小型機器上的嵌入式應用程序的微版。

轉向大多數程序員熟悉的標準版JavaSE。

然後升級到J2EE - 企業版。除了SE之外,J2EE發行版必須支持javax ....系列接口中的多個企業級庫和API。其中最重要的是「事務容器」,EJB和WS * Web服務API。

這些接口由第三方實施某些開放源代碼,如GlassFish和JBOSS,但主要由專有(最終昂貴的)產品(如WebLogic或WebSphere)提供。

1

Web應用程序是指可以部署到EE容器(如Tomcat,WebLogic或GlassFish)上的特定類型的「模塊」。它是JSP,JSF和其他類的集合。

與常規的Java應用程序不同,EE web應用程序不能僅僅通過鍵入「java」來「運行」。必須將部署到您的網絡服務器。一旦服務器正在運行,您可以利用許多內置功能,這些功能雖然很有用,但很像從首字母縮寫詞firehose中喝酒。

不幸的是,沒有簡單的方法進入它。從我所聽到的,最好的開始方式是使用Sun教程。那裏也有很多書。獲得最重要的概念是EE應用程序將運行的「容器」的概念。這就像虛擬機中有一臺虛擬機。這是一個奇怪的概念。

快樂狩獵! Jeff

4

Web應用程序不同於其他類型的應用程序,例如桌面應用程序(例如Photoshop),因爲大多數計算是在遠程計算機上完成的,只有顯示數據發送到用戶計算機。通常,用戶界面將以某種「網絡」技術(HTML/JavaScript/flash等)編寫,並將使用Web瀏覽器進行查看,因此可以查看該名稱。

爲了使其工作,遠程計算機(服務器)必須運行一個應用程序,該應用程序偵聽客戶端請求,執行一些計算並將答覆返回給用戶。例如,當您從亞馬遜購買書籍時,購買按鈕會向遠程應用程序發送請求以處理您的訂單並返回確認消息。

該流程涉及許多細節 - 應用程序必須偵聽請求,它必須處理故障,可能連接到數據庫等等。由於大部分工作與任何網絡應用程序類似,所以通常使用稱爲的應用程序服務器來爲您工作。

應用程序服務器是知道如何運行其他應用程序併爲他們完成一些工作的應用程序。因此,現在,當用戶向Web應用程序發送請求時,應用程序服務器會獲取它,也許從中提取一些數據並對其進行驗證,然後告訴您的應用程序處理業務邏輯。這樣,無論您何時編寫Web應用程序,您都不必擔心通信等問題。

有各種技術的網絡服務器。例如 - IIS是.Net Web應用程序的Web服務器。我們的Java EE實際上是一組規範(這是一組接口的一個花哨詞彙,並命令如何實現它們)定義了應該如何編寫Java應用程序以及供應商如何實現他的應用程序服務器,以便他們可以一起工作。這裏前面提到的「容器」是供應商應用程序服務器的Java EE名稱。

你說你正在學習如何編寫JSP。在編寫JSP時,實際上實現了一個規範,該規範定義瞭如何編寫Java EE顯示組件,該組件可以轉換爲HTML。您的應用程序服務器(Tomcat的/ JBoss的/ BEA等等)知道什麼,以便產生想要的HTML,然後將其發送到用戶與你的JSP做。

相關問題