- Java Web程序設計(慕課版)
- 梁永先 李樹強 朱林
- 2334字
- 2020-06-12 15:31:17
1.3 Web開發技術
在開發Web應用程序時,通常需要應用客戶端和服務器兩方面的技術。其中,客戶端應用的技術主要用于展現信息內容,而服務器端應用的技術則主要用于進行業務邏輯的處理和與數據庫的交互等。下面進行詳細介紹。
1.3.1 客戶端應用技術

客戶端應用技術
進行Web應用開發,離不開客戶端技術的支持。目前,比較常用的客戶端技術包括HTML、CSS樣式、Flash和客戶端腳本技術。下面進行詳細介紹。
1. HTML
HTML是客戶端技術的基礎,主要用于顯示網頁信息,它不需要編譯,由瀏覽器解釋執行。HTML簡單易用,它在文件中加入標簽,使其可以顯示各種各樣的字體、圖形及閃爍效果,還增加了結構和標記,如頭元素、文字、列表、表格、表單、框架、圖像和多媒體等,并且提供了與Internet中其他文檔的超鏈接。例如,在一個HTML頁中,應用圖像標記插入一個圖片,可以使用如圖1-5所示的代碼,該HTML頁運行后的效果如圖1-6所示。

圖1-5 HTML文件

圖1-6 運行結果
說明
HTML不區分大小寫,這一點與Java不同,例如,圖1-5中的HTML標記<body></body>標記也可以寫為<BODY></BODY>。
2. CSS樣式
CSS樣式就是一種叫作樣式表(style sheet)的技術,也有人稱之為層疊樣式表(Cascading Style Sheet)。在制作網頁時,采用CSS樣式,可以有效地對頁面的布局、字體、顏色、背景和其他效果實現更加精確的控制;只要對相應的代碼做一些簡單修改,就可以改變整個頁面的風格。CSS大大提高了開發者對信息展現格式的控制能力,特別是在目前比較流行的CSS+DIV布局的網站中,CSS的作用更是舉足輕重了。例如,在“心之語許愿墻”網站中,如果將程序中的CSS代碼刪除,將顯示圖1-7所示的效果,而添加CSS代碼后,將顯示圖1-8所示的效果。

圖1-7 沒有添加CSS樣式的頁面效果

圖1-8 添加CSS樣式的頁面效果
在網頁中使用CSS樣式不僅可以美化頁面,而且可以優化網頁速度。因為CSS樣式表文件只是簡單的文本格式,不需要安裝額外的第三方插件;另外,由于CSS提供了很多濾鏡效果,從而避免使用大量的圖片,這樣將大大縮小文件的體積,提高下載速度。
3. Flash
Flash是一種交互式矢量動畫制作技術,它可以包含動畫、音頻、視頻及應用程序,而且Flash文件比較小,非常適合在Web上應用。很多Web開發者都將Flash技術引入網頁中,使網頁更具有表現力。特別是應用Flash技術可實現動態播放網站廣告或新聞圖片,并且加入隨機的轉場效果,如圖1-9所示。但因為Flash技術是一個比較早期的技術,所以現在更流行使用客戶端腳本技術來實現網頁動態效果。不過Flash Player則依舊是各大網站的主流視頻插件。

圖1-9 在網頁中插入的Flash Player播放器
4. 客戶端腳本技術
客戶端腳本技術是指嵌入到Web頁面中的程序代碼,這些程序代碼是一種解釋性的語言,瀏覽器可以對客戶端腳本進行解釋。通過腳本語言可以實現以編程的方式對頁面元素進行控制,從而增加頁面的靈活性。常用的客戶端腳本語言有JavaScript和VBScript。目前,應用最為廣泛的客戶端腳本語言是JavaScript腳本。
1.3.2 服務器端應用技術

服務器端應用技術
在開發動態網站時,離不開服務器端技術。從技術發展的先后來看,服務器端技術主要有CGI、ASP、PHP、ASP.NET和JSP。下面進行詳細介紹。
1. CGI
CGI是最早用來創建動態網頁的一種技術,它可以使瀏覽器與服務器之間產生互動關系。CGI(Common Gateway Interface)即通用網關接口,它允許使用不同的語言來編寫適合的CGI程序,該程序被放在Web服務器上運行。當客戶端發出請求給服務器時,服務器根據用戶請求建立一個新的進程來執行指定的CGI程序,并將執行結果以網頁的形式傳輸到客戶端的瀏覽器上顯示。CGI可以說是當前應用程序的基礎技術,但這種技術編制方式比較困難而且效率低下,因為每次頁面被請求時,都要求服務器重新將CGI程序編譯成可執行的代碼。在CGI中使用最為常見的語言為C/C++、Java和Perl(Practical Extraction and Report Language,文件分析報告語言)。
2. ASP
ASP(Active Server Page)是一種使用很廣泛的開發動態網站的技術。它通過在頁面代碼中嵌入VBScript或JavaScript腳本語言來生成動態的內容,服務器端必須安裝了適當的解釋器后,才可以通過調用此解釋器來執行腳本程序,然后將執行結果與靜態內容部分結合并傳送到客戶端瀏覽器上。對于一些復雜的操作,ASP可以調用存在于后臺的COM組件來完成,所以說COM組件無限擴充了ASP的能力,正因如此依賴本地的COM組件,使得它主要用于Windows NT平臺中,所以Windows本身存在的問題都會映射到它的身上。當然該技術也存在很多優點,簡單易學,并且ASP是與微軟的IIS捆綁在一起,在安裝Windows操作系統的同時安裝上IIS就可以運行ASP應用程序了。
3. PHP
PHP來自于Personal Home Page一詞,但現在的PHP已經不再表示名詞的縮寫,而是一種開發動態網頁技術的名稱。PHP語法類似于C,并且混合了Perl、C++和Java的一些特性。它是一種開源的Web服務器腳本語言,與ASP一樣可以在頁面中加入腳本代碼來生成動態內容,對于一些復雜的操作可以封裝到函數或類中。PHP提供了許多已經定義好的函數,例如,提供的標準的數據庫接口,使得數據庫連接方便、擴展性強。PHP可以被多個平臺支持,但被廣泛應用于UNIX/Linux平臺。由于PHP本身的代碼對外開放,又經過許多軟件工程師的檢測,因此到目前為止該技術具有公認的安全性能。
4. ASP.NET
ASP.NET是一種建立動態Web應用程序的技術。它是.NET框架的一部分,可以使用任何.NET兼容的語言來編寫ASP.NET應用程序。使用Visual Basic .NET,C#,J#,ASP.NET頁面(Web Forms)進行編譯,可以提供比腳本語言更出色的性能表現。Web Forms允許在網頁基礎上建立強大的窗體。當建立頁面時,可以使用ASP.NET服務端控件來建立常用的UI元素,并對它們編程來完成一般的任務。這些控件允許開發者使用內建可重用的組件和自定義組件來快速建立Web Form,使代碼簡單化。
5. JSP
Java Server Page(JSP)是以Java為基礎開發的,所以它沿用了Java強大的API功能。JSP頁面中的HTML代碼用來顯示靜態內容部分;嵌入頁面中的Java代碼與JSP標記用來生成動態的內容部分。JSP允許程序員編寫自己的標簽庫來完成應用程序的特定要求。JSP可以被預編譯,提高了程序的運行速度。另外,JSP開發的應用程序經過一次編譯后,便可隨時隨地運行。所以在絕大部分系統平臺中,代碼無需做修改就可以在支持JSP的任何服務器中運行。
- JavaScript全程指南
- 自己動手寫搜索引擎
- Oracle Exadata性能優化
- 零起步玩轉掌控板與Mind+
- Practical Data Science Cookbook(Second Edition)
- Python爬蟲開發與項目實戰
- Python高效開發實戰:Django、Tornado、Flask、Twisted(第3版)
- Hands-On Microservices with Kotlin
- Learning Vaadin 7(Second Edition)
- Python Data Structures and Algorithms
- ExtJS Web應用程序開發指南第2版
- SignalR:Real-time Application Development(Second Edition)
- SQL Server 2012 數據庫應用教程(第3版)
- 實戰Python網絡爬蟲
- 深度學習的數學:使用Python語言