填坑:分分鐘讓你明白Servlet容器、web容器

1. Servlet容器

  1. Servlet(Server Applet),全稱Java Servlet,是用Java編寫的伺服器端程序。其主要功能在於互動式地瀏覽和修改數據,生成動態Web內容

  2. Servlet運行於支持Java的應用伺服器中。從實現上講,Servlet可以響應任何類型的請求,但絕大多數情況下Servlet只用來擴展基於HTTP協議Web伺服器

  3. 工作模式

  • 客戶端發送請求至伺服器

  • 伺服器啟動並調用Servlet,Servlet根據客戶端請求生成響應內容並將其傳給伺服器

  • 伺服器將響應返回客戶端

  • HttpServlet

    • javax.servlet.http.HttpServlet實現了專門用於響應HTTP請求的Servlet,提供了響應對應HTTP標準請求的doGet()doPost()等方法。

      Advertisements

  • Tomcat容器分為四個等級,管理Servlet的容器是Context容器,一個Context容器對應一個Web工程


  • 2. Web容器和servlet容器的區別

    1. 大多數servlet容器同時提供了web容器的功能,也就是說大多servelt可以獨立運行你的web應用。 ( web容器好比 電視機,servlet容器好比 VCD)

    2. 容器就是一個服務程序,在伺服器一個埠就有一個提供相應服務的程序,而這個程序就是處理從客戶端發出的請求

    3. WEB Container,給處於其中的應用程序組件(JSP,SERVLET)提供一個環境,使JSP、SERVLET直接跟容器中的服務介面交互,不必關注其它系統問題。WEB Container主要有WEB伺服器來實現。

      Advertisements

    • TOMCAT,WEBLOGIC,WEBSPHERE等。比如,Resin 2.1.x以上版本提供的Servlet Container就實現了J2EE的Servlet 2.3規範。我們把遵守以上標準的WEB伺服器就叫做J2EE中的WEB容器

  • WEB容器更多的是跟基於HTTP的請求打交道

  • 3.Web伺服器、應用程序伺服器

    1. Web伺服器的基本功能就是提供Web信息瀏覽服務。它只需支持HTTP協議、HTML文檔格式及URL。與客戶端的網路瀏覽器配合。因為Web伺服器主要支持的協議就是HTTP,所以通常情況下HTTP伺服器和WEB伺服器是相等

    2. 應用程序伺服器(簡稱應用伺服器),我們先看一下微軟對它的定義:」我們把應用程序伺服器定義為「作為伺服器執行共享業務應用程序的底層的系統軟體」。 就像文件伺服器為很多用戶提供文件一樣,應用程序伺服器讓多個用戶可以同時使用應用程序(通常是客戶創建的應用程序)」

    3. Web伺服器專門處理HTTP請求(request),但是應用程序伺服器是通過很多協議來為應用程序提供(serves)商業邏輯 (business logic)。

    4. 以Java EE為例,Web伺服器主要是處理靜態頁面處理和作為 Servlet容器,解釋和執行servlet/JSP,而應用伺服器是運行業務邏輯的,

    Advertisements

    你可能會喜歡