本身不做業(yè)務(wù)
只接收請(qǐng)求并決定調(diào)用哪個(gè)javaBean去處理請(qǐng)求
確定用哪個(gè)頁(yè)面來顯示處理返回的數(shù)據(jù)
Ø Servlet 是什么Servlet是一個(gè)Java程序,是在服務(wù)器端運(yùn)行以處理客戶端請(qǐng)求并做出響應(yīng)的程序。
Server+Applet, 是一種服務(wù)器端的Java應(yīng)用程序
只有當(dāng)一個(gè)服務(wù)器端的程序使用了 servlet API的時(shí)候,這個(gè)服務(wù)端的程序才能稱之為Servlet.
Ø ServletAPI介紹API: 應(yīng)用程序接口javax.servlet.Servlet
所有Java Servlet的基礎(chǔ)接口類。規(guī)定了必須由Servlet具體類實(shí)現(xiàn)的方法集。
javax.servlet.GenericServlet
是 Servlet的通用版本,是一種與協(xié)議無關(guān)的Servlet。
Javax.servlet.http.HttpServlet
在GenericServlet基礎(chǔ)上擴(kuò)展的基于Http協(xié)議的Servlet.在程序中,常常是繼承此類。需要注意的是,Httpservlet的子類至少重寫以下方法中的一個(gè) doGet()和doPost()。
Ø Servlet的生命周期Servlet容器負(fù)責(zé)加載和實(shí)例化Servlet。 Servlet容器有時(shí)候也叫做Servlet引擎,是Web服務(wù)器或應(yīng)用服務(wù)器的一部分,用于在發(fā)送的請(qǐng)求和響應(yīng)之間提供網(wǎng)絡(luò)服務(wù)。在這里我們可以把Servlet容器理解為 Tomcat。
加載和實(shí)例化當(dāng)Servlet容器啟動(dòng)或者容器檢測(cè)到客戶端請(qǐng)求時(shí),加載和實(shí)例化。
Servlet容器會(huì)查找內(nèi)存中是否存在Servlet實(shí)例,如果不存在,就創(chuàng)建,如果存在,就直接從內(nèi)存中取出。
初始化 init()方法實(shí)例化后,容器調(diào)用 Servlet的init(), 初始化對(duì)象。
提供服務(wù),請(qǐng)求處理 service()初始化后,Servlet就處于能響應(yīng)請(qǐng)求的就緒狀態(tài)。此時(shí)得到客戶端請(qǐng)求并做出處理。(多線程響應(yīng))。
銷毀 destroy()方法當(dāng)程序中的Servlet對(duì)象不再使用的時(shí)候或者Web服務(wù)停止的運(yùn)行的時(shí)候
Ø Servlet的主要方法Init() | Servlet的初始化方法,僅僅會(huì)執(zhí)行一次 |
Service() | 處理請(qǐng)求和生成響應(yīng) |
Destroy() | 在服務(wù)器停止并且程序中的Servlet對(duì)象不再使用的時(shí)候調(diào)用,只執(zhí)行一次 |
ServletRequest | 封裝客戶的請(qǐng)求信息 |
ServletResponse | 創(chuàng)建響應(yīng)信息,將處理結(jié)果返回給客戶端 |
ServletConfig | 包含了Servlet的初始化參數(shù)信息 |
//獲得參數(shù)
Request.getParameter(“param”);
//將輸入的內(nèi)容轉(zhuǎn)換為中文
Request.setCharacteEncoding(“GBK”);
Request.setAttribute(“loginname”,user);
HttpServletResponse response 對(duì)象常用方法//解決中文亂碼問題
Response.setContentType(“text/html;charset=GBK”);
Response.sendRedirect(“url”);
轉(zhuǎn)發(fā)RequestDispatcher dispatcher = request.getRequestDispatcher(url);
首先定義轉(zhuǎn)發(fā)器。參數(shù) url 是魚轉(zhuǎn)發(fā)的頁(yè)面或者 Servlet的URL地址。
Dispatcher.forward(request,response);
然后實(shí)現(xiàn)轉(zhuǎn)發(fā)的功能,參數(shù)為請(qǐng)求、響應(yīng)對(duì)象。
14.2 Servlet 的部署與配置當(dāng)前項(xiàng)目的web.xml
<web-app>
<servlet>
<servlet-name>自定義名稱</servlet-name>
<servlet-class>servlet實(shí)際類的具體位置</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>同上自定義的名稱 </servlet-name>
<url-pattern>用戶訪問Servlet的URL</url-pattern>
</servlet-mapping>
</web-app>
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注