Servlet期末複習筆記

一.認識和熟悉Servlet

1.擴寫:Servlet = Server + let 服務器小程序

2.Servlet是一種服務器端組件

3.一個Servlet是一個服務器端的Java程序,負責接受客戶端請求,處理請求,生成響應返給客戶端

4.創建一個Servlet就是創建一個Servlet類,可通過實現Servlet接口創建一個Servlet類

5.創建Servlet的步驟(這裏給出的是實現Servlet接口創建Servlet的步驟):

(1)實現Servlet接口,創建一個Servlet類

(2)實現繼承的所有方法,將生成的throw new UnsupprortedOerationException("Not supported yet" )語句全部刪除

(3)在Service()方法中編寫代碼,處理請求

(4)在web-inf目錄下創建web.xml,然後添加Servlet的配置,其中url-pattern是用於設置訪問servlet的路徑。路徑以/開頭,後面自己定義路徑名稱即可。

(5)設置表單的action屬性爲要訪問的servlet的路徑,在設置表單的action屬性的時候,不需要添加/,直接寫servlet路徑即可

一個web程序在潯興之前,必須要進行打包,打包成一個war文件,然後在服務器上進行部署,才能進行訪問。

6.如何訪問一個Web程序

http://計算機名或ip地址:端口號/程序的上下文路徑

如:http://10.2.63.129:8084/LoginSystem/

7.如何訪問一個web程序中的頁面資源

http:計算機主機名或ip地址:端口號/程序的上下文路徑/頁面資源的路徑

如:http://10.2.63.129:8084/LoginSysterm/second.html

8.如何訪問一個Web程序的Servlet

http://計算機主機名或ip地址:端口號/LoginSysterm/ls

如果要追加參數http://localhost:8080/LoginSysterm/ls?username=anna&pwd=1234(不能有空格)

9.question:

一個servlet什麼時候被實例化:第一次收到請求的時候

二.Servlet生命週期

  一個Servlet在第一次收到請求的時候被實例化,後續再次請求該servlet,則直接用相同的實例服務後續請求。

1.Servlet工作原理:

->Web容器收到請求

->查找對應的Servlet

->加載Servlet類

->實例化Servlet

->調用init()方法初始化servlet

->Web容器將請求傳遞給servlet,調用service方法處理請求,返回響應

->後續再次請求改Servlet,web容器直接使用相同的實力,調用service方法服務請求

問:指出第一次訪問一個Servlet,servlet方法的調用順序

init()->service()->doGet()/doPost()->destroy()

三:創建Servlet的三種方式

1.實現Servlet接口,需要實現Servlet的所有方法,主要是service()

2.繼承GenericServlet類

必須實現抽象方法service(),其他方法需要的話重寫即可

3.繼承HttpServlet類

  可不實現任何方法,但是因爲要處理請求,所以一般重寫doGet()/doPost(),不需要重寫service,因爲service會根據請求提交方式調用doGet(),或doPOst().

四.表單提交方式

1.Get

Get方式提交一個表單,表單中的參數會追加到地址欄的url後面,相對不安全

且能夠發送的數據量有限制,具體看瀏覽器的限制

Get方式提交請求多事爲了從服務器請求數據,如百度的根據關鍵字檢索內容

2.Post

Post方式提交一個表單,表單中的參數不會追加到地址欄,而是作爲請求的正文發送,相對安全

能夠範松的數據量沒有限制,但是要看服務器的處理能力

Post方式提交數據多事爲了發送數據給服務器,多用於實現數據的增刪改,如註冊或修改個人消息

五,Servlet相關API(Application programming interface):Servlet相關的類和接口

1.ServletRequest

包含了操作請求的一些基本犯法,如獲取參數的一些方法:getParameter(),getPara,eterValues()等

2.ServletResponse

包含了一些操作響應的基本方法,包括setContentType(),getWriter()等

3.HttpServletRequest(繼承自ServletRequest)

在SerletRequest接口方法的基礎上添加更多方法,如操作請求報頭信息的方法,如getHeader()

4.HttpServletResponse

在ServletResponse接口的基礎上添加了更方法,包括用於設置響應報頭信息的方法,如serHeader()等,如果設置的包頭心事日期,整數等類型,可考慮調用對應方法,如setDateHeader(),setIntHeader()等

六.ServletConfig-Servlet配置接口

每個servlet都有一個Servlet-Config對象,包含該servlet的配置信息,如servlet的初始化參數

如果有一些初始數據是某個servlet要用的,可以定義爲該servlet的初始化參數

Servlet的配置信息會封裝到一個ServletConfig對象中,可以再servlet中通過調用getServletConfig()方法獲取該對象,進而通過該對象回去Servlet的初始化參數和其他配置信息

每個Servlet的ServletConfig獨享實在調用servelt的init()方法的時候傳入的

七.ServletContext-Servlet上下文接口

一個成熟只有一個上下文對象麼用於程序中共享數據

如果有一些初始數據是所有servlet或多個servlet要用的,可以考慮定義爲程序的初始化參數,叫做上下文參數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章