1.1。Java Web開發(fā)
Java對Web開發(fā)有很強(qiáng)的支持。雖然在桌面上的Java,與基于Eclipse RCP的應(yīng)用程序的顯著例外從未取得巨大的成功,Java經(jīng)常在服務(wù)器端使用。
1.2。Web開發(fā)
如果您開發(fā)Web應(yīng)用程序(獨(dú)立于您使用的編程語言),則通常將Web應(yīng)用程序放在專用服務(wù)器(而不是本地計算機(jī))上。Web應(yīng)用程序在服務(wù)器上運(yùn)行,人們可以在那里訪問它。服務(wù)器是真實(shí)機(jī)器(具有CPU,存儲器,硬盤等)或虛擬服務(wù)器,其基本上是由軟件分離成較小機(jī)器的機(jī)器。
可以將本地計算機(jī)用作服務(wù)器,但通常您希望有一個固定的服務(wù)器,每天運(yùn)行24小時,每周運(yùn)行7天,以便Web客戶端始終可以在預(yù)定義的地址下訪問您的服務(wù)器。
例如,blog.vogella.com包含vogella博客。這個博客是一個由WordPress提供支持的Web應(yīng)用程序,它是一個用服務(wù)器端腳本語言PHP編寫的Web應(yīng)用程序。
1.3。服務(wù)器與云部署
而不是直接在專用服務(wù)器上運(yùn)行應(yīng)用程序,您還可以在云環(huán)境中運(yùn)行它。此云環(huán)境為應(yīng)用程序提供必要的服務(wù)器。例如,Google App Engine允許托管以不同編程語言編寫的Web應(yīng)用程序。
1.4。Java Web或Java EE容器
Java Web應(yīng)用程序通常不直接在服務(wù)器上運(yùn)行。Java Web應(yīng)用程序在服務(wù)器上的Web容器中運(yùn)行。
容器為Java Web應(yīng)用程序提供了一個運(yùn)行時環(huán)境。該容器用于Java Web應(yīng)用程序,JVM(Java虛擬機(jī))用于本地運(yùn)行Java應(yīng)用程序。容器本身在JVM中運(yùn)行。
通常,Java區(qū)分兩個容器:Web容器和Java EE容器。Java世界中的典型Web容器是Tomcat或Jetty。Web容器支持Java servlet和JavaServer Pages的執(zhí)行。Java EE容器支持附加功能,例如,服務(wù)器負(fù)載的分發(fā)。
大多數(shù)現(xiàn)代Java Web框架都基于servlet。流行的Java Web框架是GWT,JavaServer Faces,Struts和Spring框架。這些網(wǎng)絡(luò)框架通常需要web容器作為小容器。
2. Java Web應(yīng)用程序
Java Web應(yīng)用程序是動態(tài)資源(如Servlet,JavaServer Pages,Java類和jar)和靜態(tài)資源(HTML頁面和圖片)的集合。Java Web應(yīng)用程序可以部署為一個 WAR (Web歸檔)文件。
一個 WAR 文件是一個zip文件,其中包含相應(yīng)的Web應(yīng)用程序的完整內(nèi)容。
Java Web標(biāo)準(zhǔn)
標(biāo)準(zhǔn)的Java技術(shù)是指通過一個標(biāo)準(zhǔn)的過程稱為Java社區(qū)進(jìn)程(JCP) 。以下技術(shù)通過JCP定義。
3.1。Servlet
servlet是一個Java類,它擴(kuò)展了“HttpServlet”并回答了Web容器中的HTTP請求。新的官方版本是3.0的Servlet這也是的Java EE 6的一部分細(xì)節(jié)見 的Java Servlet的3.0規(guī)格。
3.2。JavaServer頁面
JavaServer Pages(JSP)是包含HTML和Java代碼的文件。web訪問者在第一次訪問JSP時將JSP編譯成servlet。當(dāng)前新版本是2.1。
見規(guī)范的JavaServer Pages 2.1
3.3。JavaServer Pages標(biāo)準(zhǔn)標(biāo)簽庫
JavaServer Pages標(biāo)準(zhǔn)標(biāo)簽庫(JSTL)將許多Web應(yīng)用程序通用的核心功能封裝為簡單標(biāo)簽。當(dāng)前版本是1.2是JavaServer Pages Specification版本2.1的一部分。
3.4。開始使用Java Web開發(fā)
開始使用Java Web開發(fā)相對容易。您可以通過以下嘗試, Servlet和JSP教程。
4.基于非標(biāo)準(zhǔn)的Java Web開發(fā)
對于Java,你還發(fā)現(xiàn)很多非標(biāo)準(zhǔn)的Web開發(fā)。例如,GWT支持Java開發(fā)并編譯成JavaScript。見 GWT教程 以獲取更多信息。