目前, 國內(nèi)外信息化建設(shè)已經(jīng)進(jìn)入基于Web應(yīng)用為核心的階段, Java作為應(yīng)用于網(wǎng)絡(luò)的語言,前景無限看好。然而,就算用Java建造一個不是很煩瑣的web應(yīng)用,也不是件輕松的事情。概括一下,實施Java的WEB項目需要掌握的技術(shù)如下:
lJava語言
l面向?qū)ο蠓治鲈O(shè)計思想
l設(shè)計模式和框架結(jié)構(gòu)
lXML語言
l網(wǎng)頁腳本語言
l數(shù)據(jù)庫
l應(yīng)用服務(wù)器
l集成開發(fā)環(huán)境
下面我們具體地看每個技術(shù).
1、Java語言
Java語言體系比較龐大,包括多個模塊。從WEB項目應(yīng)用角度講有JSP、Servlet、JDBC、JavaBean(Application)四部分技術(shù)。
(1)、Java Database Connectivity (JDBC)技術(shù)
在Java Web應(yīng)用開發(fā)中,數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一種用于執(zhí)行 SQL 語句的 Java API。它由一組用 Java 編程語言編寫的類和接口組成。JDBC 為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的API,使他們能夠用純Java API 來編寫數(shù)據(jù)庫應(yīng)用程序。
簡單地說,JDBC 可做三件事:
l與數(shù)據(jù)庫建立連接,
l發(fā)送 SQL 語句,
l處理結(jié)果。
(2)、Servlet技術(shù)
Servlet是運(yùn)行在服務(wù)器端的程序,可以被認(rèn)為是服務(wù)器端的applet。servlet被Web服務(wù)器(例如Tomcat)加載和執(zhí)行,就如同applet被瀏覽器加載和執(zhí)行一樣。servlet從客戶端(通過Web服務(wù)器)接收請求,執(zhí)行某種操作,然后返回結(jié)果。
Servlet的主要優(yōu)點包括
lServlet是持久的。servlet只需Web服務(wù)器加載一次,而且可以在不同請求之間保持服務(wù)(例如一次數(shù)據(jù)庫連接)。
lServlet是與平臺無關(guān)的。如前所述,servlet是用Java編寫的,它自然也繼承了Java的平臺無關(guān)性。
lServlet是可擴(kuò)展的。由于servlet是用Java編寫的,它就具備了Java所能帶來的所有優(yōu)點。Java是健壯的、面向?qū)ο蟮木幊陶Z言,它很容易擴(kuò)展以適應(yīng)你的需求。servlet自然也具備了這些特征。
lServlet是安全的。從外界調(diào)用一個servlet的惟一方法就是通過Web服務(wù)器。這提供了高水平的安全性保障,尤其是在你的Web服務(wù)器有防火墻保護(hù)的時候。
lServlet可以在多種多樣的客戶機(jī)上使用。由于servlet是用Java編寫的,所以你可以很方便地在HTML中使用它們。
(3)、JavaServer Pages(JSP) 技術(shù)
JSP是從Servlet上分離出來的一小部分,簡化了開發(fā),加強(qiáng)了界面設(shè)計。JSP定位在交互網(wǎng)頁的開發(fā)。運(yùn)用Java語法,但功能較Servlet弱了很多,并且高級開發(fā)中只充當(dāng)用戶界面部分。JSP容器收到客戶端發(fā)出的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式響應(yīng)給客戶端。其中程序片段可以是:操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送 E-Mail 等等,這些都是建立動態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,與客戶端的瀏覽器無關(guān),因此,JSP 稱為Server-Side Language。
JavaServer Pages的主要優(yōu)點包括
●一次編寫,各處執(zhí)行(Write once, Run Anywhere)特性
作為Java 平臺的一部分,JavaServer Pages 技術(shù)擁有Java語言“一次編寫,各處執(zhí)行”的特點。隨著越來越多的供貨商將JavaServer Pages 技術(shù)添加到他們的產(chǎn)品中,您可以針對自己公司的需求,做出審慎評估后,選擇符合公司成本及規(guī)模的服務(wù)器,假若未來的需求有所變更時,更換服務(wù)器平臺并不影響之前所投下的成本、人力所開發(fā)的應(yīng)用程序。
● 搭配可重復(fù)使用的組件
JavaServer Pages技術(shù)可依賴于重復(fù)使用跨平臺的組件(如:JavaBean或Enterprise JavaBean組件)來執(zhí)行更復(fù)雜的運(yùn)算、數(shù)據(jù)處理。開發(fā)人員能夠共享開發(fā)完成的組件,或者能夠加強(qiáng)這些組件的功能,讓更多用戶或是客戶團(tuán)體使用。基于善加利用組件的方法,可以加快整體開發(fā)過程,也大大降低公司的開發(fā)成本和人力。
● 采用標(biāo)簽化頁面開發(fā)
Web 網(wǎng)頁開發(fā)人員不一定都是熟悉Java 語言的程序員。因此,JSP 技術(shù)能夠?qū)⒃S多功能封裝起來,成為一個自定義的標(biāo)簽,這些功能是完全根據(jù)XML 的標(biāo)準(zhǔn)來制訂的,即JSP 技術(shù)中的標(biāo)簽庫(Tag Library)。因此,Web 頁面開發(fā)人員可以運(yùn)用自定義好的標(biāo)簽來達(dá)成工作需求,而無須再寫復(fù)雜的Java 語法,讓W(xué)eb 頁面開發(fā)人員亦能快速開發(fā)出一動態(tài)內(nèi)容網(wǎng)頁。
今后,第三方開發(fā)人員和其他人員可以為常用功能建立自己的標(biāo)簽庫,讓W(xué)eb 網(wǎng)頁開發(fā)人員能夠使用熟悉的開發(fā)工具,如同HTML 一樣的標(biāo)簽語法來執(zhí)行特定功能的工作。
● N-tier 企業(yè)應(yīng)用架構(gòu)的支持
有鑒于網(wǎng)際網(wǎng)絡(luò)的發(fā)展,為因應(yīng)未來服務(wù)越來越繁雜的要求,且不再受地域的限制,因此,
必須放棄以往Client-Server的Two-tier 架構(gòu),進(jìn)而轉(zhuǎn)向更具威力、彈性的分散性對象系統(tǒng)。由于JavaServer Page 技術(shù)是Java 2 Platform Enterprise Edition (J2EE)集成中的一部分,它主要是負(fù)責(zé)前端顯示經(jīng)過復(fù)雜運(yùn)算后之結(jié)果內(nèi)容,而分散性的對象系統(tǒng)則是主要依賴EJB ( Enterprise JavaBean )和JNDI ( Java Naming and Directory Interface )構(gòu)建而成。
(4)、JavaBean(Application)應(yīng)用組件技術(shù)
Application是Java應(yīng)用程序,在WEB項目和一些開發(fā)中主要應(yīng)用JavaBean。它就是Application的一部分,邏輯運(yùn)算能力很強(qiáng),能極大的發(fā)揮Java語言的優(yōu)點。JavaBean 被稱為是Java 組件技術(shù)的核心。JavaBean 的結(jié)構(gòu)必須滿足一定的命名約定。JavaBean能提供常用功能并且可以重復(fù)使用,這使得開發(fā)人員可以把某些關(guān)鍵功能和核心算法提取出來封裝成為一個組件對象,這樣就增加了代碼的重用率和系統(tǒng)的安全性。
高級的WEB項目會應(yīng)用到以上所有技術(shù),它們之間聯(lián)合使用和協(xié)作開發(fā)會提高開發(fā)的效率和系統(tǒng)的性能。
lJava語言
l面向?qū)ο蠓治鲈O(shè)計思想
l設(shè)計模式和框架結(jié)構(gòu)
lXML語言
l網(wǎng)頁腳本語言
l數(shù)據(jù)庫
l應(yīng)用服務(wù)器
l集成開發(fā)環(huán)境
下面我們具體地看每個技術(shù).
1、Java語言
Java語言體系比較龐大,包括多個模塊。從WEB項目應(yīng)用角度講有JSP、Servlet、JDBC、JavaBean(Application)四部分技術(shù)。
(1)、Java Database Connectivity (JDBC)技術(shù)
在Java Web應(yīng)用開發(fā)中,數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一種用于執(zhí)行 SQL 語句的 Java API。它由一組用 Java 編程語言編寫的類和接口組成。JDBC 為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的API,使他們能夠用純Java API 來編寫數(shù)據(jù)庫應(yīng)用程序。
簡單地說,JDBC 可做三件事:
l與數(shù)據(jù)庫建立連接,
l發(fā)送 SQL 語句,
l處理結(jié)果。
(2)、Servlet技術(shù)
Servlet是運(yùn)行在服務(wù)器端的程序,可以被認(rèn)為是服務(wù)器端的applet。servlet被Web服務(wù)器(例如Tomcat)加載和執(zhí)行,就如同applet被瀏覽器加載和執(zhí)行一樣。servlet從客戶端(通過Web服務(wù)器)接收請求,執(zhí)行某種操作,然后返回結(jié)果。
Servlet的主要優(yōu)點包括
lServlet是持久的。servlet只需Web服務(wù)器加載一次,而且可以在不同請求之間保持服務(wù)(例如一次數(shù)據(jù)庫連接)。
lServlet是與平臺無關(guān)的。如前所述,servlet是用Java編寫的,它自然也繼承了Java的平臺無關(guān)性。
lServlet是可擴(kuò)展的。由于servlet是用Java編寫的,它就具備了Java所能帶來的所有優(yōu)點。Java是健壯的、面向?qū)ο蟮木幊陶Z言,它很容易擴(kuò)展以適應(yīng)你的需求。servlet自然也具備了這些特征。
lServlet是安全的。從外界調(diào)用一個servlet的惟一方法就是通過Web服務(wù)器。這提供了高水平的安全性保障,尤其是在你的Web服務(wù)器有防火墻保護(hù)的時候。
lServlet可以在多種多樣的客戶機(jī)上使用。由于servlet是用Java編寫的,所以你可以很方便地在HTML中使用它們。
(3)、JavaServer Pages(JSP) 技術(shù)
JSP是從Servlet上分離出來的一小部分,簡化了開發(fā),加強(qiáng)了界面設(shè)計。JSP定位在交互網(wǎng)頁的開發(fā)。運(yùn)用Java語法,但功能較Servlet弱了很多,并且高級開發(fā)中只充當(dāng)用戶界面部分。JSP容器收到客戶端發(fā)出的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式響應(yīng)給客戶端。其中程序片段可以是:操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送 E-Mail 等等,這些都是建立動態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,與客戶端的瀏覽器無關(guān),因此,JSP 稱為Server-Side Language。
JavaServer Pages的主要優(yōu)點包括
●一次編寫,各處執(zhí)行(Write once, Run Anywhere)特性
作為Java 平臺的一部分,JavaServer Pages 技術(shù)擁有Java語言“一次編寫,各處執(zhí)行”的特點。隨著越來越多的供貨商將JavaServer Pages 技術(shù)添加到他們的產(chǎn)品中,您可以針對自己公司的需求,做出審慎評估后,選擇符合公司成本及規(guī)模的服務(wù)器,假若未來的需求有所變更時,更換服務(wù)器平臺并不影響之前所投下的成本、人力所開發(fā)的應(yīng)用程序。
● 搭配可重復(fù)使用的組件
JavaServer Pages技術(shù)可依賴于重復(fù)使用跨平臺的組件(如:JavaBean或Enterprise JavaBean組件)來執(zhí)行更復(fù)雜的運(yùn)算、數(shù)據(jù)處理。開發(fā)人員能夠共享開發(fā)完成的組件,或者能夠加強(qiáng)這些組件的功能,讓更多用戶或是客戶團(tuán)體使用。基于善加利用組件的方法,可以加快整體開發(fā)過程,也大大降低公司的開發(fā)成本和人力。
● 采用標(biāo)簽化頁面開發(fā)
Web 網(wǎng)頁開發(fā)人員不一定都是熟悉Java 語言的程序員。因此,JSP 技術(shù)能夠?qū)⒃S多功能封裝起來,成為一個自定義的標(biāo)簽,這些功能是完全根據(jù)XML 的標(biāo)準(zhǔn)來制訂的,即JSP 技術(shù)中的標(biāo)簽庫(Tag Library)。因此,Web 頁面開發(fā)人員可以運(yùn)用自定義好的標(biāo)簽來達(dá)成工作需求,而無須再寫復(fù)雜的Java 語法,讓W(xué)eb 頁面開發(fā)人員亦能快速開發(fā)出一動態(tài)內(nèi)容網(wǎng)頁。
今后,第三方開發(fā)人員和其他人員可以為常用功能建立自己的標(biāo)簽庫,讓W(xué)eb 網(wǎng)頁開發(fā)人員能夠使用熟悉的開發(fā)工具,如同HTML 一樣的標(biāo)簽語法來執(zhí)行特定功能的工作。
● N-tier 企業(yè)應(yīng)用架構(gòu)的支持
有鑒于網(wǎng)際網(wǎng)絡(luò)的發(fā)展,為因應(yīng)未來服務(wù)越來越繁雜的要求,且不再受地域的限制,因此,
必須放棄以往Client-Server的Two-tier 架構(gòu),進(jìn)而轉(zhuǎn)向更具威力、彈性的分散性對象系統(tǒng)。由于JavaServer Page 技術(shù)是Java 2 Platform Enterprise Edition (J2EE)集成中的一部分,它主要是負(fù)責(zé)前端顯示經(jīng)過復(fù)雜運(yùn)算后之結(jié)果內(nèi)容,而分散性的對象系統(tǒng)則是主要依賴EJB ( Enterprise JavaBean )和JNDI ( Java Naming and Directory Interface )構(gòu)建而成。
(4)、JavaBean(Application)應(yīng)用組件技術(shù)
Application是Java應(yīng)用程序,在WEB項目和一些開發(fā)中主要應(yīng)用JavaBean。它就是Application的一部分,邏輯運(yùn)算能力很強(qiáng),能極大的發(fā)揮Java語言的優(yōu)點。JavaBean 被稱為是Java 組件技術(shù)的核心。JavaBean 的結(jié)構(gòu)必須滿足一定的命名約定。JavaBean能提供常用功能并且可以重復(fù)使用,這使得開發(fā)人員可以把某些關(guān)鍵功能和核心算法提取出來封裝成為一個組件對象,這樣就增加了代碼的重用率和系統(tǒng)的安全性。
高級的WEB項目會應(yīng)用到以上所有技術(shù),它們之間聯(lián)合使用和協(xié)作開發(fā)會提高開發(fā)的效率和系統(tǒng)的性能。