初識 Servlet
- 1. 什麼是 Servlet?
- 2. Servlet 開發
-
- 2.1 開發方式
- 3. tomcat 與 Servlet 的關系, 流程
- 4. Servlet的生命周期
1. 什麼是 Servlet?
Servlet為建立基于 web 的應用程式提供了基于元件、獨立于平台的方法,可以不受 CGI 程式的性能限制。Servlet 有權限通路所有的 Java API,包括通路企業級資料庫的 JDBC API。
2. Servlet 開發
Servlet開發
服務資源:
(1) tomcat部署的項目目錄中, 根目錄下, 除了 WEB-INF檔案夾外, 當做前端資源
(2) Servlet後端代碼提供動态資源
以代碼的方式, 解析http請求, 傳回響應(可以提供動态的body字元串)
2.1 開發方式
方法一
(1)xml配置: web.xml中的Servlet
(2)注解方式
方法二
idea中搭建, 部署一個, 運作一個web項目
(1) 建立一個maven項目, 修改pom.xml
(2)設定 web 項目開發結構需要的web 資源檔案夾, web.xml web描述檔案
(3)重新整理maven面闆, 讓web項目配置生效
(4) 配置tomcat, 部署項目
run --> edit congifuration
選擇+, 添加 tomcat server
(5) 啟動tomcat
(6) 驗證配置是否成功, web項目是否配置正确
3. tomcat 與 Servlet 的關系, 流程
tomcat是一個web伺服器, 也是一個Servlet容器
tomcat 如何管理Servlet?
- tomcat 是一個Java程式
- tomcat是基于java開發的, 開發時并不知道要執行個體化哪Servlet對象,
- 基于反射來執行個體化Servlet對象
掃描項目類加載路徑 (WEB-INF/ classes) 使用了
Servlet注解的類, 在基于反射, 執行個體化對象
tomcat 作為Servlet的容器, 管理Servlet對象的生命周期
(執行個體化對象, 方法調用)
Map<String, Servlet對象> — key 就是路徑
反射: 運作時動态的擷取資訊, 方法, 字段的資訊
- tomcat自動的解析http協定的資料
- 根據請求的應用上下文路徑, 查找應用
- 根據服務路徑, 找Servlet
-
找到Servlet處理http請求, 傳回響應
調用Servlet對象的service方法
最後可以調用到doXXX方法
4. Servlet的生命周期
按照 Servlet 開發規範, 重寫doXXX方法, 不要重寫service