JavaWeb——Servlet入門小記
什麼是Servlet
Servlet 執行在服務端的Java小程式,是sun公司提供一套規範(介面),用來處理客戶端請求、響應給瀏覽器的動態資源。但servlet的實質就是java程式碼,通過java的API 動態的向客戶端輸出內容。
Servlet快速入門
實現步驟: 1)建立類實現Servlet介面 2)覆蓋尚未實現的方法—service方法 3)在web.xml進行servlet的配置
但在實際開發中,我們不會直接去實現Servlet介面,因為那樣需要覆蓋的方法太多, 我們一般建立類繼承HttpServlet 實現步驟: 1)建立類繼承HttpServlet類 2)覆蓋doGet和doPost 3)在web.xml中進行servlet的配置
我們可以採用eclipse進行快速建立servlet,eclipse會自動配置好web.xml,並且提供一個預設的模板給你,但是模板不是太好用,這裡貼出一個自己收藏的一個模板:
package ${enclosing_package};
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ${primary_type_name} extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("hello servlet...");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
設定方法為:window-preference-Java-Edior-Templates,點選右側的New,Name填寫servlet,內容直接複製貼上進去,描述隨便寫,點選確定儲存。 在你新建立一個servlet之後,直接Alt+A全選,然後輸入servlet回車,清楚明瞭的模板檔案就生成完畢。
ServletContext物件
什麼是ServletContext物件 ServletContext代表是一個web應用的環境(上下文)物件,ServletContext物件 內部封裝是該web應用的資訊,ServletContext物件一個web應用只有一個
問題: 一個web應用有幾個servlet物件?----多個
ServletContext物件的生命週期? 建立:該web應用被載入(伺服器啟動或釋出web應用(前提,伺服器啟動狀態)) 銷燬:web應用被解除安裝(伺服器關閉,移除該web應用)
以下為ServletContext和Servlet的基本關係,
怎樣獲得ServletContext物件
//建立物件
ServletContext servletContext = this.getServletContext()
//獲得web應用中任何資源的絕對路徑
String path = servletContext.getRealPath(realPath);//重要 重要 重要