JavaWeb自學筆記 JavaWeb簡介

C/S體系結構介紹

C/S是Client/Server的縮寫,即客戶端/服務器結構。在這種結構中,服務器通常採用高性能的PC機或工作站,並採用大型數據庫系統(如Oracle或SQL Server),客戶端則需要安裝專用的客戶端軟件。這種結構可以充分利用兩段硬件環境優勢,將任務合理地分配到客戶端和服務器,從而降低了系統的通信開銷。比如我們玩的遊戲,我們需要有一個本地客戶端,客戶端中會包含一些人物模型,地圖之類的文件,這樣我們在玩遊戲的時候會大大減少工作量,比如我們進入一個新地圖。我們可以直接從本地文件中加載,而不是從服務器端去下載地圖模型。我們與服務器端只需要有一些比較簡單的交互就可以了。

B/S體系結構介紹

B/S是Brower/Server的縮寫,即瀏覽器/服務器結構,在這種結構中,客戶端不需要開發任何用戶界面,而是通過Web瀏覽器(如IE和谷歌瀏覽器)向Web服務器發送請求,由Web服務器進行處理,並將處理結果逐級傳回客戶端。這種結構利用不斷成熟和普及的瀏覽器技術來實現原來需要複雜專用軟件才能實現的強大功能,從而節約了開發成本,是一種全新的軟件體系結構。B/S體系結構已經成爲當今應用軟件的首選體系結構。

兩種體系結構的比較

C/S結構和B/S結構是當今世界網絡程序開發體系結構的兩大主流。目前,這兩種結構都有自己的市場份額和客戶羣。但是,這兩種體系結構又各有各的優點和缺點。

1,開發和維護成本方面

C/S結構的開發和維護成本都比B/S高,採用C/S結構時,對於不同客戶端要開發不同的程序,而且軟件的安裝,調試和升級均需要在所有的客戶機上進行。例如,當我們玩的遊戲哪怕是進行了很微小的改動,都需要對客戶機的客戶端進行更新。而B/S結構的軟件,則不必在客戶端進行安裝和維護。如果將前面企業C/S結構的軟件換成B/S結構,則在軟件升級後,系統維護員只需要將服務器的軟降升級到最新版本,對於其他客戶端,只需要重新登錄系統,即可使用最新版本的軟件。

2,客戶端負載

C/S結構的客戶端不僅負責與用戶的交互,收集用戶信息,而且還需要完成通過網絡向服務器請求對數據庫,電子表格或文檔等信息的處理工作。由此可見,應用程序的功能越複雜,客戶端程序也就越龐大,這也給軟件的維護工作帶來了很大的困難。而B/S結構的客戶端把事務處理邏輯部分交給了服務器,由服務器進行處理,客戶端只需要進行顯示,這樣將使應用程序服務器的運行數據負荷較重,一旦發生服務器“崩潰”等問題,後果將不堪設想,因此,許多單位都具備有數據庫存儲服務器,以防萬一。

3,安全性

C/S結構適用於專人使用的系統,可以通過嚴格的管理派發軟件,打到保證系統安全的目的,這樣的軟件相對來說安全性比較高。而對於B/S結構的軟件,由於使用的人數較多且不固定,相對來說安全性就會低些。
由此可見,B/S相對於C/S來說具有更多的優勢,現今大量的應用程序開始應用B/S,許多軟件公司也爭相開發B/S板的軟件,也就是Web應用程序。隨着Internet的發展,基於HTTP協議和HTML標準的Web應用呈幾何數量級的增長,而這些Web應用正是由各種Web技術所開發的。

Web應用程序的工作原理

Web應用程序大體上可以分爲兩種,即靜態網站和動態網站。早期的Web應用主要是靜態頁面的瀏覽,即靜態網站。這些網站使用HTML語言來編寫,放在Web服務器上,用戶使用瀏覽器通過HTTP協議請求服務器上的Web頁面,服務器上的Web服務器將接受道德用戶請求處理後,再發送給客戶端瀏覽器,顯示給用戶。
隨着網絡的發展,很多線下業務開始向網上發展,基於Internet的Web應用也變得越來越複雜,用戶所訪問的資源已不再是隻侷限於服務器上保存的靜態網頁,更多的內容需要根據用戶的請求動態生成頁面信息,即動態網站。這些網站通常使用HTML語言和動態腳本語言(如JSP,ASP或是PHP等)編寫,並將編寫後的程序部署到Web服務器上,由Web服務器對動態腳本代碼進行處理,並轉化爲瀏覽器可以解析的HTML代碼,返回給客戶端瀏覽器,顯示給用戶。我們經常認爲帶有動畫效果的網頁就是動態網頁,其實不然,動態網頁值得是由交互性,內容可以自動更新的網頁。比如我們登陸了一個網站,登陸成功後會顯示歡迎界面,歡迎XXX回來,這其中的XXX就是由動態網頁技術實現的。我們登陸一個網站,會有個人主頁,個人信息等,每個人的革新主頁個人信息都不可能是一樣的,這就是動態頁面技術完成的。

Web應用技術

在開發Web應用程序時,通常需要應用客戶端和服務器兩方面的技術。其中,客戶端應用的技術主要用於展現信息內容,而服務器端應用的技術則主要用於進行業務邏輯的處理和與數據庫的交互等。我們主要了解HTML語言和CSS技術。

HTML語言

HTML預言師客戶端技術的基礎,主要用於顯示網頁信息,由瀏覽器解釋執行,它不需要編譯。HTML語言簡單易用,它在文件中加入標籤,使其可以顯示各種各樣的文字,圖形及閃爍效果,還增加了結構和標記,如頭元素,文字,列表,表格,表單,框架,圖像和多媒體等,並且提供了與Internet中其他文檔的超鏈接。

CSS

CSS是一種叫做樣式表的技術,也有人稱之爲層疊樣式表。在製作網頁時採用CSS樣式,可以有效地對頁面的佈局,字體,顏色,背景和其他效果實現更加精確的控制。只要對相應的代碼做一些簡單的修改,就可以改變整個頁面的風格。CSS的作用更是舉足輕重。在網頁中使用CSS樣式不僅可以美化頁面,而且可以優化網頁速度。因爲CSS樣式表文件只是簡單的文本格式,不需要安裝額外的第三方插件。另外,由於CSS提供了很多濾鏡效果,從而避免使用大量的圖片,這樣將大大縮小文件的體積,提高下載速度

服務器端應用的技術JSP

上面說的都是在客戶端應用的技術,而在服務器端應用的技術有很多,這裏我們要學習的是JSP技術。
JSP是以Java爲基礎開發的,所以它沿用Java強大的API功能。JSP頁面中的HTML代碼用來顯示靜態內容部分,嵌入到頁面中的Java代碼與JSP標記用來生成動態的內容部分。JSP允許程序員編寫自己的標籤庫來完成應用程序的特定要求。JSP可以被預編譯,提高了程序的運行速度。另外,JSP開發的應用程序經過一次編譯後,便可隨時隨地運行。所以在絕大部分系統平臺中,代碼無需做修改,即可在支持JSP的任何服務器中運行。
後面我們會詳細介紹HTML語言,CSS和JSP技術。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章