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