ervlet總結
1.Servlet負責用來在伺服器端處理使用者的請求,當客戶端發送一個請求給伺服器,伺服器透過web.xml設定檔找到對應的Servlet,從而處理這個請求。一個servlet要和URL綁定在一起,用戶透過存取URL存取servlet。
2.實作servlet的三種方式
Java.servlet.Sertvlet類
Java.servlet.GenericServlet類let介面中的方法
//初始化
void init (ServletConfig config)
/銷毀
()ServletConfig getServletConfig () 客戶端發出一個請求,伺服器會透過URL找到對應的Servlet,如果這個Servlet物件不存在,伺服器會建立Servlet物件 建立物件之後,伺服器立刻呼叫init(ServletConfig config) 初始化工作,之後伺服器呼叫 Servlet的service(ServletRequest req, ServletResponse res)方法,此時需要給它一個參數request和response。
當客戶端再次存取這個Servlet時,因為Servlet物件已經存在,就不會在創建它了。 Servlet是單例的。
(備註:單例模式是一種常用的軟體設計模式。在它的核心結構中只包含一個被稱為單例類別的特殊類別。透過單例模式可以保證系統中一個類別只有一個實例而且此實例易於外界訪問,從而方便對實例個數的控制並節約系統資源。銷毀Servlet物件時,會先呼叫destroy()完成一些資源的釋放工作,然後銷毀物件
4.在web.xml中設定servlet
HelloHelloSerlet>
HelloWorldServlet
/helloWorld
ServletConfig物件是由伺服器建立的,當伺服器呼叫init()方法時當做實參傳遞給方法init(),
我們就可以在init()方法中使用它。
(1)String getInitParameter(String name):用來取得在web.xml中配置的初始化參數,透過參數名稱取得參數值。
(2)Enumeration getInitParameterNames():用來取得在web.xml中配置的所有初始化參數名稱。
(3)ServletContext getServletContext():用來傳回ServletContext物件
(4)String getServletName():用來傳回Servlet在web.xml中設定名稱,即
=2
major=java 6. GenericServlet:它是一個實作了javax.servlet.Servlet介面的抽象類,繼承這個類別也可以實作Servlet.類別中的getServletContext()、getInitParameter()等方法可以直接使用,如果想做一些初始化參數的工作,
不要去重寫方法init(ServletConfig config),而是要去重寫方法init()
HttpServlet:它是一個專門用於處理Http協定請求的Servlet類,我們可以透過繼承HttpServlet實作Servlet
這是一種最簡單的方式,我們今後都這樣做,因為客戶端發送來的請求只有get和post兩種方式.因此我們只需要重寫這兩個方式。
7.HttpServlet:它是一個專門用於處理Http協議請求的Servlet類,我們可以透過繼承HttpServlet實現Servlet
寄來的請求只有get和post兩種方式
因此我們只需要重寫這兩個方式。