1. 為什麼會出現Servlet?
因為web伺服器(tomcat、Weblogic、iis、apache)沒有處理動态資源請求的能力(即該請求需要計算),隻能處理靜态資源的請求(如果浏覽器請求某個html頁面,web伺服器檢視請求的html頁面是否存在,存在則傳回。)如果要讓web伺服器處理動态資源的請求,則需要使用CGI1程式、元件加容器的方式。
2. Servlet解決了什麼?和
Servlet
使得web伺服器有了處理動态資源的能力,
Servlet容器
就是web伺服器處理動态資源的具體實作。
Servlet
3. Servlet和Servlet容器如何讓web伺服器有處理動态資源的能力?
- 浏覽器根據
通路伺服器上的url
2程式web伺服器
-
程式擷取到請求,轉發給web伺服器
servlet容器
-
根據該請求,編譯執行特定的servlet容器
servlet類檔案
-
根據請求執行不同的方法,動态生成結果servlet類檔案
-
将執行後的靜态資料,傳回給servlet類檔案
servlet容器
-
将靜态資料傳回給servlet容器
,web伺服器
将靜态資料傳回給浏覽器web伺服器
- 浏覽器展示靜态資料
-
CGI是Web伺服器運作時外部程式的規範,按CGI 編寫的程式可以擴充伺服器功能。CGI 應用程式能與浏覽器進行互動,還可通過資料API與資料庫伺服器等外部資料源進行通信,從資料庫伺服器中擷取資料。格式化為HTML文檔後,發送給浏覽器,也可以将從浏覽器獲得的資料放到資料庫中。幾乎所有伺服器都支援CGI,可用任何語言編寫CGI,包括流行的C、C ++、VB 和Delphi 等。
---來源:百度百科↩
-
Web伺服器一般指網站伺服器,是指駐留于網際網路上某種類型計算機的程式,可以向浏覽器等Web用戶端提供文檔,也可以放置網站檔案,讓全世界浏覽;可以放置資料檔案,讓全世界下載下傳。目前最主流的三個Web伺服器是Apache、 Nginx 、IIS。
---來源:百度百科↩