Tomcat

????Tomcat是由Apache軟件基金會下屬的Jakarta項目開發的一個Servlet容器,實現了對ServletJavaServer PageJSP)的支持,并提供了作為Web服務器的一些特有功能,如Tomcat管理和控制平臺、安全域管理和Tomcat閥等。由于Tomcat本身也內含了一個HTTP服務器,它也可以被視作一個單獨的Web服務器。但是,不能將Tomcat和Apache HTTP服務器混淆,Apache HTTP服務器是一個用C語言實現的HTTPWeb服務器;這兩個HTTP web server不是捆綁在一起的。Apache Tomcat包含了一個配置管理工具,也可以通過編輯XML格式的配置文件來進行配置。

????Servlet(Server Applet),全稱Java Servlet。是用Java編寫的服務器端程序。其主要功能在于交互式地瀏覽和修改數據,生成動態Web內容。狹義的Servlet是指Java語言實現的一個接口,廣義的Servlet是指任何實現了這個Servlet接口的類,一般情況下,人們將Servlet理解為后者。

????Servlet運行于支持Java的應用服務器中。從實現上講,Servlet可以響應任何類型的請求,但絕大多數情況下Servlet只用來擴展基于HTTP協議的Web服務器。最早支持Servlet標準的是JavaSoft的Java Web Server。

通用Servlet

????一般來說,通用Servlet由javax.servlet.GenericServlet實作Servlet界面。程序設計人員可以通過使用或繼承這個類來實現通用Servlet應用。

HttpServlet

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

生命周期

????當servlet被部署在應用服務器中(應用服務器中用于管理Java組件的部分被抽象成為容器)以后,由容器控制servlet的生命周期。除非特殊指定,否則在容器啟動的時候,servlet是不會被加載的,servlet只會在第一次請求的時候被加載和實例化。servlet一旦被加載,一般不會從容器中刪除,直至應用服務器關閉或重新啟動。但當容器做內存回收動作時,servlet有可能被刪除。也正是因為這個原因,第一次訪問servlet所用的時間要大大多于以后訪問所用的時間。

servlet在服務器的運行生命周期為,在第一次請求(或其實體被內存垃圾回收后再被訪問)時被加載并執行一次初始化方法,跟著執行正式運行方法,之后會被常駐并每次被請求時直接執行正式運行方法,直到服務器關閉或被清理時執行一次銷毀方法后實體銷毀。

與JSP的關系

????Java服務器頁面(JSP)是HttpServlet的擴展。由于HttpServlet大多是用來響應HTTP請求,并返回Web頁面(例如HTML、XML),所以不可避免地,在編寫servlet時會涉及大量的HTML內容,這給servlet的書寫效率和可讀性帶來很大障礙,JSP便是在這個基礎上產生的。其功能是使用HTML的書寫格式,在適當的地方加入Java代碼片段,將程序員從復雜的HTML中解放出來,更專注于servlet本身的內容。

JSP在首次被訪問的時候被應用服務器轉換為servlet,在以后的運行中,容器直接調用這個servlet,而不再訪問JSP頁面。JSP的實質仍然是servlet。

????JSP(全稱JavaServer?Pages)是由Sun Microsystems公司倡導和許多公司參與共同創建的一種使軟件開發者可以響應客戶端請求,而動態生成HTML、XML或其他格式文檔的Web網頁的技術標準。JSP技術是以Java語言作為腳本語言的,JSP網頁為整個服務器端的Java庫單元提供了一個接口來服務于HTTP的應用程序。

????JSP使Java代碼和特定的預定義動作可以嵌入到靜態頁面中。JSP句法增加了被稱為JSP動作的XML標簽,它們用來調用內建功能。另外,可以創建JSP標簽庫,然后像使用標準HTML或XML標簽一樣使用它們。標簽庫提供了一種和平臺無關的擴展服務器性能的方法。

????JSP被JSP編譯器編譯成Java Servlets。一個JSP編譯器可以把JSP編譯成JAVA代碼寫的servlet然后再由JAVA編譯器來編譯成機器碼,也可以直接編譯成二進制碼。

SP和Servlets

從架構上說,JSP可以被看作是從Servlets高級提煉而作為JAVA Servlet?2.1 API的擴展而應用。Servlets和JSP最早都是由Sun Microsystems(太陽公司)開發的。從JSP1.2版本以來,JSP處于Java Community Process開發模式下。

????靜態數據在輸入文件中的內容和輸出給HTTP響應的內容完全一致。此時,該JSP輸入文件會是一個沒有內嵌JAVA或動作的HTML頁面。而且,客戶端每次請求都會得到相同的響應內容。

 

原創文章,作者:HGG,如若轉載,請注明出處:http://www.www58058.com/86292

(1)
HGGHGG
上一篇 2017-09-05 09:03
下一篇 2017-09-05 15:04

相關推薦

  • N25第七周RAID LV 概述及示例,swap創建,read 特殊用法以及bash腳本示例

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; mke2fs -t ext4 -b 2048 …

    Linux干貨 2017-01-04
  • 20160802作業

    20160802作業 1、每日課堂筆記總結 2、預習 3、每日課堂pdf練習 4、在/data/testdir里創建的新文件自動屬于g1組,組g2的成員如: alice能對這些新文件有讀寫權限,組g3的成員如:tom只能對新文件有讀權限,其它用戶(不屬于g1,g2,g3)不能訪問這個文件夾。 [root@Centos7 ~]# chmod…

    Linux干貨 2016-08-04
  • 第10天:程序包,腳本,sed

    http://note.youdao.com/yws/public/redirect/share?id=b9432a76ff1180b42e01f6eb7c9fc90e&type=false

    Linux干貨 2016-08-18
  • linux中常用文本處理工具

       在linux文件系統中經常會使用到文本處理工具,這里簡單介紹幾種文本處理工具: 抽取文本的工具 文件內容:less和cat 文件截?。篽ead和tail 按列抽?。篶ut 按關鍵字抽?。篻rep , egrep 文件查看命令:cat, tac,rev,more,less   cat命令是用戶經常使用的用來查看文本…

    Linux干貨 2016-08-07
  • Linux之磁盤管理

    Linux之磁盤管理       linux系統中, 一切都是文件, 而這些文件都是存儲在磁盤中, 因此對于磁盤的管理是非常重要的, Linux磁盤管理的好壞, 直接關系到整個系統的性能問題, 本文主要介紹了磁盤結構, 分區類型, 管理分區, 管理文件系統, 掛載設備, 管理虛擬內存這幾大項的內容.    &…

    Linux干貨 2016-08-29
  • yum詳解及源碼包的編譯安裝

    yum的功能:     在我們使用rpm包安裝程序時,各個程序包之間可能存在非常嚴重的依賴關系,這就導致我們在安裝一個包的同時還需要安裝其他存在依賴關系的包,因此我們可以使用rpm包的前端管理工具yum,可通過yum所支持的文件共享機制來解決各個rpm包之間的依賴關系。 yum倉庫的配置文件:   …

    Linux干貨 2016-08-25
欧美性久久久久