1. 程式人生 > >玩轉Web之servlet(三)---一張圖看懂B/S架構

玩轉Web之servlet(三)---一張圖看懂B/S架構

學WEB, 首先 要明白B/S架構,本文將簡單說一下小編的愚見,若有不當,歡迎大家指正。

首先,什麼是B/S架構?B/S是Broweser/Server的縮寫,即瀏覽器/伺服器模式簡單說就是客戶端使用瀏覽器,服務端使用Web伺服器,客戶端與服務端之間使用http協議進行通訊。

那麼,為什麼要使用B/S架構呢?當然是其有一定的優點:

          1.傳統的C/S架構 需要單獨安裝客戶端,一旦客戶端版本發生變化,需要重新安裝,而B/S架構客戶端使用的是瀏覽器。

          2.開發相對簡單,C/S模式需要我們在客戶端和服務端編寫通訊模組和自定義的通訊協議,但B/S架構則使用http協議。

下面是我畫的一張B/S架構的流程圖:

需要注意的是瀏覽器按理說應該向Web伺服器傳送請求,web伺服器再向servlet傳送請求,在servlet裡對資料進行處理,但也可以直接向servlet容器傳送請求,因為servlet容器裡也有個通訊模組,可以把servlet容器當成一個簡單的web伺服器。

首先客戶端是一個以html為主的頁面,當然也可能用到譬如easyui,liger ui的技術,流程就是按圖中數字由小到大的方向走的:

1:使用者操作客戶端,即對頁面進行操作。

2:客戶端頁面獲取使用者操作需要的資訊,比如使用者登入時的使用者名稱密碼,或對頁面進行了點選,需要非同步載入資料,將需要傳送到伺服器進行處理的資料獲取下來

3:通過http的通訊模組對2中獲取的資訊進行打包

4,:通過ajax等技術將資料傳送到服務端

5:在服務端通過http將傳過來的包進行拆包

6:servlet通過request獲取客戶端發來的請求

7~8:在dao層,即業務邏輯層對獲取的請求進行處理,然後與資料庫進行互動

9~10:將dao層得出的處理結果返回到servlet,通過response返回客戶端

11~12:對要返回的響應打包,通過http協議傳送到客戶端

13:將http傳過來的包進行拆包

14:對響應進行解析(傳過來的是json或其他東西),通過瀏覽器體現出來

這只是簡單的說一下B/S架構,真正使用的時候要做的工作還是很多,還有就是後期會對一些東西進行封裝,所以有些地方會有些出入,但總體思想還是一樣的。

作為一名大二在校生,能力有限,若有不合適的地方,歡迎大家指教