web編程技術的核心:servlet的使用,servlet在服務器的配置操作

使用eclipse創建servlet的時候,它會默認在web.xml下配置,url-pattern默認是/servlet類名

Servlet運行在服務端的Java小程序,是sun公司提供一套規範(接口),用來處理客戶端請求、響應給瀏覽器的動態資源。但servlet的實質就是java代碼,通過java的API 動態的向客戶端輸出內容

servlet規範:包含三個技術點

1)servlet技術

2)filter技術---過濾器

3)listener技術---監聽器

創建servlet的時候,如果出現這個問題,

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

說明沒有導入servlet包,可以去tomcat下找,然後導入,還可以

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

之後就可以導包了

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

創建一個servlet

實現步驟:

1)創建類實現Servlet接口

2)覆蓋尚未實現的方法---service方法

3)在web.xml進行servlet的配置

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

光創建沒有用,還需要在web。xml配置一下

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

servlet-name為給這個這個servlet起個名字一般用原名稱比較好,servlet為類全名包含包,url為映射路徑,寫好之後我們就可以通過http://localhost:8080/WWW/abc來訪問了

結果輸出first

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

Servlet的生命週期

1Servlet何時創建

服務器開啟之後,默認第一次訪問servlet時自動創建該對象

2Servlet何時銷燬

服務器關閉servlet就銷燬了

每次訪問必然執行的方法

service(ServletRequest req, ServletResponse res)方法

Servlet接口中的方法

1 init(ServletConfig config)

何時執行:servlet對象創建的時候執行

ServletConfig :代表的是該servlet對象的配置信息

2 service(ServletRequest request,ServletResponse response)

何時執行:每次請求都會執行

ServletRequest :代表請求 認為ServletRequest 內部封裝的是http請求的信息

ServletResponse :代表響應 認為要封裝的是響應的信息

3 destroy()

何時執行:servlet銷燬的時候執行

init的參數config能獲取到什麼?

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

初始化參數我們可以在web.xml配置servlet的時候頁配置一些參數

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

servlet的執行過程

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

Servlet的配置

前面我們已經知道了servlet的基本配置,其實他還有其它標籤可以使用,還有其它配置可以操作,這裡總結一下

基本配置

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

在基本配置中url的配置信息也有多種

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

還有一點就是第二種配置和第三種配置不能一起用/a/b/*.abc(錯誤的)

還有一個標籤是,我們在第一次訪問servlet時會默認創建servlet,通過這個標籤可以在tomcat一運行的時候就自動創建servlet對象

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

配置好之後,只要一啟動,就自動創建QuickStratServlet對象了,不會等到訪問資源的時候才會創建,還有一個問題是標籤的位置不能隨便寫,

應該寫在之後,這是由schema約束決定的

缺省配置

web應用中所有的資源的響應都是servlet負責,包括靜態資源,也就是說瀏覽器輸入一個資源,都會按照servlet去尋找,如果他是一個servlet,那麼將很方便的找到,如果它不是一個servlet,那麼在apache的web。xml(它管理所有的web應用)有以下配置

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

這個配置的大概意思就是說如果他不是servlet,則再去webContent下去尋找對應的文件

那麼配置缺省有什麼用呢?

就是說當所有servlet都不匹配時 , 缺省的servlet負責處理,可以將url-pattern配置一個/,代表該servlet是缺省的servlet

那麼以後我們訪問資源的時候,如果找不到對應的servlet,則就會訪問這個缺省的所對應的servlet

舉例就是當我們訪問http://localhost:8080/WWW/1.html雖然1.html存在,但是並沒有1.html對應的servlet所以此時這個缺省的會起作用,訪問這個缺省對應的servlet,如果沒有配置缺省,那麼apache下的web。xml會起作用

web編程技術的核心:servlet的使用,servlet在服務器的配置操作

會去webContent下去尋找對應的文件1.html,所以缺省配置完成之後,只有servlet可以順利訪問,靜態資源訪問不會順利,總結就是每個項目下的web。xml為主,apache下的xml為輔


分享到:


相關文章: