自己不作業務html
只接收請求並決定調用哪一個JavaBean去處理請求java
肯定用哪一個頁面來顯示處理返回的數據web
Servlet是一個Java程序,是在服務器端運行以處理客戶端請求並作出響應的程序。服務器
Server+Applet, 是一種服務器端的Java應用程序網絡
只有當一個服務器端的程序使用了 servlet API的時候,這個服務端的程序才能稱之爲Servlet.多線程
javax.servlet.Servlet app
全部Java Servlet的基礎接口類。規定了必須由Servlet具體類實現的方法集。url
javax.servlet.GenericServletspa
是 Servlet的通用版本,是一種與協議無關的Servlet。線程
Javax.servlet.http.HttpServlet
在GenericServlet基礎上擴展的基於Http協議的Servlet.在程序中,經常是繼承此類。須要注意的是,Httpservlet的子類至少重寫如下方法中的一個 doGet()和doPost()。
Servlet容器負責加載和實例化Servlet。 Servlet容器有時候也叫作Servlet引擎,是Web服務器或應用服務器的一部分,用於在發送的請求和響應之間提供網絡服務。在這裏咱們能夠把Servlet容器理解爲 Tomcat。
當Servlet容器啓動或者容器檢測到客戶端請求時,加載和實例化。
Servlet容器會查找內存中是否存在Servlet實例,若是不存在,就建立,若是存在,就直接從內存中取出。
實例化後,容器調用 Servlet的init(), 初始化對象。
初始化後,Servlet就處於能響應請求的就緒狀態。此時獲得客戶端請求並作出處理。(多線程響應)。
當程序中的Servlet對象再也不使用的時候或者Web服務中止的運行的時候
Init() |
Servlet的初始化方法,僅僅會執行一次 |
Service() |
處理請求和生成響應 |
Destroy() |
在服務器中止而且程序中的Servlet對象再也不使用的時候調用,只執行一次 |
ServletRequest |
封裝客戶的請求信息 |
ServletResponse |
建立響應信息,將處理結果返回給客戶端 |
ServletConfig |
包含了Servlet的初始化參數信息 |
//得到參數
Request.getParameter(「param」);
//將輸入的內容轉換爲中文
Request.setCharacteEncoding(「GBK」);
Request.setAttribute(「loginname」,user);
//解決中文亂碼問題
Response.setContentType(「text/html;charset=GBK」);
Response.sendRedirect(「url」);
RequestDispatcher dispatcher = request.getRequestDispatcher(url);
首先定義轉發器。參數 url 是魚轉發的頁面或者 Servlet的URL地址。
Dispatcher.forward(request,response);
而後實現轉發的功能,參數爲請求、響應對象。
當前項目的web.xml
<web-app>
<servlet>
<servlet-name>自定義名稱</servlet-name>
<servlet-class>servlet實際類的具體位置</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>同上自定義的名稱 </servlet-name>
<url-pattern>用戶訪問Servlet的URL</url-pattern>
</servlet-mapping>
</web-app>