JSP-11-Servlet

1 初識Servlet

Ø  Servlet作了什麼

自己不作業務html

只接收請求並決定調用哪一個JavaBean去處理請求java

肯定用哪一個頁面來顯示處理返回的數據web

Ø  Servlet 是什麼

Servlet是一個Java程序,是在服務器端運行以處理客戶端請求並作出響應的程序。服務器

Server+Applet, 是一種服務器端的Java應用程序網絡

只有當一個服務器端的程序使用了 servlet API的時候,這個服務端的程序才能稱之爲Servlet.多線程

Ø  ServletAPI介紹

API: 應用程序接口

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容器有時候也叫作Servlet引擎,是Web服務器或應用服務器的一部分,用於在發送的請求和響應之間提供網絡服務。在這裏咱們能夠把Servlet容器理解爲 Tomcat。

  加載和實例化

當Servlet容器啓動或者容器檢測到客戶端請求時,加載和實例化。

Servlet容器會查找內存中是否存在Servlet實例,若是不存在,就建立,若是存在,就直接從內存中取出。

  初始化     init()方法

實例化後,容器調用 Servlet的init(), 初始化對象。

  提供服務,請求處理   service()

初始化後,Servlet就處於能響應請求的就緒狀態。此時獲得客戶端請求並作出處理。(多線程響應)。

  銷燬   destroy()方法

當程序中的Servlet對象再也不使用的時候或者Web服務中止的運行的時候

 

Ø  Servlet的主要方法

Init()

Servlet的初始化方法,僅僅會執行一次

Service()

處理請求和生成響應

Destroy()

在服務器中止而且程序中的Servlet對象再也不使用的時候調用,只執行一次

ServletRequest

封裝客戶的請求信息

ServletResponse

建立響應信息,將處理結果返回給客戶端

ServletConfig

包含了Servlet的初始化參數信息

 

Ø  Servlet處理 Get/Post 請求

  HttpServletRequest request對象的用戶

//得到參數

Request.getParameter(「param」);

//將輸入的內容轉換爲中文

         Request.setCharacteEncoding(「GBK」);

         Request.setAttribute(「loginname」,user);

  HttpServletResponse response 對象經常使用方法

//解決中文亂碼問題

Response.setContentType(「text/html;charset=GBK」);

Response.sendRedirect(「url」);

  轉發                                                                                                                    

RequestDispatcher dispatcher = request.getRequestDispatcher(url);

首先定義轉發器。參數 url 是魚轉發的頁面或者 Servlet的URL地址。

Dispatcher.forward(request,response);

而後實現轉發的功能,參數爲請求、響應對象。                                                                                                                                                                                                                                                                                                                                                                      

14.2  Servlet 的部署與配置

當前項目的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>

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息