目前, 國內外信息化建設已經進入基於Web應用為核心的階段, Java作為應用於網絡的最好語言,前景無限看好。然而,就算用Java建造一個不是很煩瑣的web應用,也不是件輕松的事情。概括一下,實施Java的WEB項目需要掌握的技術如下:
lJava語言
l面向對象分析設計思想
l設計模式和框架結構
lXML語言
l網頁腳本語言
l數據庫
l應用服務器
l集成開發環境
下面我們具體地看每個技術.
1、Java語言
Java語言體系比較龐大,包括多個模塊。從WEB項目應用角度講有JSP、Servlet、JDBC、J
avaBean(Application)四部分技術。
(1)、Java Database Connectivity (JDBC)技術
在Java Web應用開發中,數據庫管理系統(RDBMS)的使用是不可缺少的。JDBC(Java Dat
abase Connectivity) 是一種用於執行 SQL 語句的 Java API。它由一組用 Java 編程語
言編寫的類和接口組成。JDBC 為工具/數據庫開發人員提供了一個標准的API,使他們能夠
用純Java API 來編寫數據庫應用程序。
簡單地說,JDBC 可做三件事:
l與數據庫建立連接,
l發送 SQL 語句,
l處理結果。
(2)、Servlet技術
Servlet是運行在服務器端的程序,可以被認為是服務器端的applet。servlet被Web服務器
(例如Tomcat)加載和執行,就如同applet被瀏覽器加載和執行一樣。servlet從客戶端(
通過Web服務器)接收請求,執行某種操作,然后返回結果。
Servlet的主要優點包括
lServlet是持久的。servlet只需Web服務器加載一次,而且可以在不同請求之間保持服務
(例如一次數據庫連接)。
lServlet是與平台無關的。如前所述,servlet是用Java編寫的,它自然也繼承了Java的平
台無關性。
lServlet是可擴展的。由於servlet是用Java編寫的,它就具備了Java所能帶來的所有優點
。Java是健壯的、面向對象的編程語言,它很容易擴展以適應你的需求。servlet自然也具
備了這些特征。
lServlet是安全的。從外界調用一個servlet的惟一方法就是通過Web服務器。這提供了高
水平的安全性保障,尤其是在你的Web服務器有防火牆保護的時候。
lServlet可以在多種多樣的客戶機上使用。由於servlet是用Java編寫的,所以你可以很方
便地在HTML中使用它們。
(3)、JavaServer Pages(JSP) 技術
JSP是從Servlet上分離出來的一小部分,簡化了開發,加強了界面設計。JSP定位在交互網
頁的開發。運用Java語法,但功能較Servlet弱了很多,並且高級開發中只充當用戶界面部
分。JSP容器收到客戶端發出的請求時,首先執行其中的程序片段,然后將執行結果以HTM
L格式響應給客戶端。其中程序片段可以是:操作數據庫、重新定向網頁以及發送 E-Mail
等等,這些都是建立動態網站所需要的功能。所有程序操作都在服務器端執行,網絡上傳
送給客戶端的僅是得到的結果,與客戶端的瀏覽器無關,因此,JSP 稱為Server-Side La
nguage。
JavaServer Pages的主要優點包括
●一次編寫,各處執行(Write o­nce, Run Anywhere)特性
作為Java 平台的一部分,JavaServer Pages 技術擁有Java語言“一次編寫,各處執行”
的特點。隨着越來越多的供貨商將JavaServer Pages 技術添加到他們的產品中,您可以針
對自己公司的需求,做出審慎評估后,選擇符合公司成本及規模的服務器,假若未來的需
求有所變更時,更換服務器平台並不影響之前所投下的成本、人力所開發的應用程序。
● 搭配可重復使用的組件
JavaServer Pages技術可依賴於重復使用跨平台的組件(如:JavaBean或Enterprise Jav
aBean組件)來執行更復雜的運算、數據處理。開發人員能夠共享開發完成的組件,或者能
夠加強這些組件的功能,讓更多用戶或是客戶團體使用。基於善加利用組件的方法,可以
加快整體開發過程,也大大降低公司的開發成本和人力。
● 采用標簽化頁面開發
Web 網頁開發人員不一定都是熟悉Java 語言的程序員。因此,JSP 技術能夠將許多功能封
裝起來,成為一個自定義的標簽,這些功能是完全根據XML 的標准來制訂的,即JSP 技術
中的標簽庫(Tag Library)。因此,Web 頁面開發人員可以運用自定義好的標簽來達成工作
需求,而無須再寫復雜的Java 語法,讓Web 頁面開發人員亦能快速開發出一動態內容網頁
。
今后,第三方開發人員和其他人員可以為常用功能建立自己的標簽庫,讓Web 網頁開發人
員能夠使用熟悉的開發工具,如同HTML 一樣的標簽語法來執行特定功能的工作。
● N-tier 企業應用架構的支持
有鑒於網際網絡的發展,為因應未來服務越來越繁雜的要求,且不再受地域的限制,因此
,
必須放棄以往Client-Server的Two-tier 架構,進而轉向更具威力、彈性的分散性對象系
統。由於JavaServer Page 技術是Java 2 Platform Enterprise Edition (J2EE)集成中的
一部分,它主要是負責前端顯示經過復雜運算后之結果內容,而分散性的對象系統則是主
要依賴EJB ( Enterprise JavaBean )和JNDI ( Java Naming and Directory Interface
)構建而成。
(4)、JavaBean(Application)應用組件技術
Application是Java應用程序,在WEB項目和一些開發中主要應用JavaBean。它就是Applic
ation的一部分,邏輯運算能力很強,能極大的發揮Java語言的優點。JavaBean 被稱為是
Java 組件技術的核心。JavaBean 的結構必須滿足一定的命名約定。JavaBean能提供常用
功能並且可以重復使用,這使得開發人員可以把某些關鍵功能和核心算法提取出來封裝成
為一個組件對象,這樣就增加了代碼的重用率和系統的安全性。
高級的WEB項目會應用到以上所有技術,它們之間聯合使用和協作開發會提高開發的效率和
系統的性能。
2、面向對象分析設計思想
Java語言是完全面向對象的語言,所以在項目設計時會有很大的幫助,在設計時應盡量舍
棄以往的面向過程的設計方式。
在分析項目業務關系的時候,應用一些UML(Unified Modeling Language)圖,例如常用的用
例圖(use case diagram),類圖(class diagram),時序圖(sequence diagram)等等,會有
很大的幫助,這樣能盡快找出業務邏輯主要面對的對象,然后對每個對象進行行為划分,
最后再實現對象之間的集成和通信。
3、設計模式和框架結構
Java從語言角度來講不是很難,但是從整體設計角度來講我們還需要了解一些高級應用框
架。如果要設計一個良好的框架結構,單單只掌握Java語言遠遠不夠。這就涉及到一個設
計模式,還有和設計模式相關的一些知識。
設計模式在Java項目實施過程更是重中之重。主要在與兩層的設計模式、三層的設計模式
和N層的設計模式。它直接決定着項目的應用、部署和實際開發設計。
在普通的WEB項目中很多采用兩層的開發結構。JSP+Servlet或JSP+JavaBean。當對開發要
求高的項目中使用很多的還是MVC的三層開發結構,也就是JSP+Servlet+JavaBean。它能分
有效的分離邏輯開發,使開發人員能專注於各自的開發。同時也能時整個開發結構流程更
清晰,但是需要比較高的開發配合度。
在項目中,我們經常使用著名的Model-View-Controller(MVC)架構。MVC架構是隨着small
talk language語言的發展提出的,它是一個著名的用戶界面設計架構。經典的MVC架構把
一個組件(可認為是整個應用程序的一個模塊)划分成三部分組 Model管理這個模塊中所
用到的數據和業務邏輯。而View 管理模塊如何顯示給用戶,Controller 決定如何處理用
戶和該模塊交互式時候產生的事件 如用戶點擊一個按鈕等。
4、XML語言
在服務器和設計模式結構中會應用到自定義文件,而且在應用高級設計時也會定義自用的
標簽,現在流行的是用XML去定義配置,所以XML語言應該有一定掌握。
當前,Java 2平台企業版(J2EE)架構在廠商市場和開發者社區中倍受推崇。作為一種工
具,可擴展標記語言(XML)簡化了數據交換、進程間消息交換這一類的事情,因而對開發
者逐漸變得有吸引力,並開始流行起來。自然,在J2EE架構中訪問或集成XML解決方案的想
法也很誘人。因為這將是強大系統架構同高度靈活的數據管理方案的結合。
XML的應用似乎是無窮無盡的,但它們大致上可以分為三大類:
1、簡單數據的表示和交換(針對XML的簡單API(SAX)和文檔對象模型(DOM)語法解析,
不同的文檔類型定義(DTDs)和概要(schemas))
2、用戶界面相關、表示相關的上下文(可擴展樣式表語言(XSL),可擴展樣式表語言轉
換(XSLT))
3、面向消息的計算(XML-RPC(遠程過程調用),基於SOAP協議的Web 服務(Web Servic
es),電子化業務XML(ebXML))
5、網頁腳本語言
為了提高WEB項目的整體性能,提高人機交互的友好界面,網頁的腳本語言是很有用處的,
有的時候可以解決很大的難題或提高程序的性能和應用性。
網頁腳本語言的執行都是在客戶端執行的,速度很很快,並且大多的操作與服務器沒有交
互運算,所以在一些應用中非常理想。在設計WEB項目的應用中,網頁的腳本語言起着不能
忽視的作用,所以如果設計WEB項目的應用中,對JavaScript應有一定的了解。
JavaScript是一種基於對象(Object Based)和事件驅動(Event Driven)並具有安全性能(
Secure)的腳本語言。使用它的目的是與HTML超文本標記語言、Java 腳本語言(Java小程
序)一起實現在一個Web頁面中鏈接多個對象,與Web客戶交互作用。從而可以開發客戶端
的應用程序等。它是通過嵌入或調入在標准的HTML語言中實現的。它具有以下幾個基本特
點:
1.它是一種腳本編寫語言
JavaScript是一種腳本語言,它采用小程序段的方式實現編程。像其它腳本語言一樣,Jav
aScript同樣已是一種解釋性語言,它提供了一個易的開發過程。
它的基本結構形式與C、C++、VB十分類似。但它不像這些語言一樣,需要先編譯,而是在
程序運行過程中被逐行地解釋。它與HTML標識結合在一起,從而方便用戶的使用操作。
2. 基於對象的語言。
JavaScript是一種基於對象的語言,同時以可以看作一種面向對象的。這意味着它能運用
自己已經創建的對象。因此,許多功能可以來自於腳本環境中對象的方法與腳本的相互作
用。
3.簡單性
JavaScript的簡單性主要體現在:首先它是一種基於Java基本語句和控制流之上的簡單而
緊湊的設計, 從而對於學習Java是一種非常好的過渡。其次它的變量類型是采用弱類型,
並未使用嚴格的數據類型。
4.安全性
JavaScript是一種安全性語言,它不允許訪問本地的硬盤,並不能將數據存入到服務器上
,不允許對網絡文檔進行修改和刪除,只能通過瀏覽器實現信息瀏覽或動態交互。從而有
效地防止數據的丟失。
5. 動態性
JavaScript是動態的,它可以直接對用戶或客戶輸入做出響應,無須經過Web服務程序。它
對用戶的響應,是采用以事件驅動的方式進行的。所謂事件驅動,就是指在主頁(Home Pa
ge)中執行了某種操作所產生的動作,就稱為“事件”(Event)。比如按下鼠標、移動窗口
、選擇菜單等都可以視為事件。當事件發生后,可能會引起相應的事件響應。
6、開發工具
(1)、數據庫
在主要的應用中,數據庫相關的環節應用很多,所以對數據庫應該有一定了解。不能單單
只了解一種數據庫,因為在很多實際開發中會提出很多數據庫解決方案,所以只有在了解
多種數據庫的情況下才能有一個比較方案。
對於數據庫應該了解他的性能和一些基本的操作常識,還有該數據庫的特點。而針對與Ja
va語言WEB項目的數據庫開發則主要是對JDBC的應用,還有數據庫事務處理和連接池等高級
概念的應用。
(2)、Web服務器
同數據庫一樣,應該了解該服務器的性能,特點和一些常識。
在應用方面,Web服務器主要是針對於配置和部署,對目錄的配置,調試;對配置文件屬性
的修改;對訪問權限和並發性的控制;Java類的部署等。
(3)、集成開發環境(IDE):
“公欲善其事, 必先利其器”. 對於Web應用開發人員來講,好的集成開發環境(IDE:I
ntegrated Development Enviroment)是非常重要的。目前在市場上占主導位置的一個集
成開發工具就是Eclipse.