小小六

          學(xué)無止境

          Servlet&JSP學(xué)習(xí)之Servlet的請求和響應(yīng)

          1. Servlet的請求

          假如你已經(jīng)安裝好了Eclipse或者其他IDE,現(xiàn)在就建一個(gè)Servlet文件試試看,你會(huì)發(fā)現(xiàn)建立的Servlet會(huì)默認(rèn)繼承javax.servlet.http.HttpServlet類,就算你沒有安裝Eclipse也無所謂,知道我們編寫的Servlet是需要繼承javax.servlet.http.HttpServlet類就可以啦。
               現(xiàn)在打開這個(gè)類看看,看看Servlet的老爸長得如何,public abstract class HttpServlet extends GenericServlet implements Serializable; 從這看得出,Servlet還有一個(gè)爺爺,它是javax.servlet.GenericServlet,還實(shí)現(xiàn)了一個(gè)序列化的功能(java.io.Serializable),序列化的就不說啦,老實(shí)說,我也沒用過序列化這功能,僅處于知道有這個(gè)地球上有這么一個(gè)東西而已。再接著看看Servlet爺爺長得是啥樣,public abstract class GenericServlet extends Object implements Servlet, ServletConfig, Serializable; 我們這需要留意的是Servlet的爺爺是實(shí)現(xiàn)了Servlet的接口的,你打開Servlet接口,里面有這樣一句話:Defines methods that all servlets must implement. 換一句話,它是Servlet的老祖宗,所有的Servlet必須要實(shí)現(xiàn)這個(gè)接口,要不就不能稱之為Servlet。我們Web用的HTTP協(xié)議所以就是HttpServlet,同樣的道理,如果將來出現(xiàn)XTTP協(xié)議,也許你會(huì)看到一個(gè)XttpServlet,它必定也是實(shí)現(xiàn)了Servlet接口(當(dāng)然啦,技術(shù)出現(xiàn)了大變革除外)。Servlet的爸爸,爺爺?shù)姆椒ㄟ@么多,不可能每一個(gè)都說。就挑一些常用的(也就是Servlet生命周期的幾個(gè)函數(shù))說說:
                    void init(); //Servlet初始化
                    void service (ServletRequest req, ServletResponse res);
                     void doGet (ServletRequest req, ServletResponse res);
                     void doPost (ServletRequest req, ServletResponse res);
                     …………
                     Servlet各種服務(wù)
                    void destroy(); //Servlet的銷毀

           

                記得李興華老師當(dāng)時(shí)是這樣說的:Servlet的生命周期其實(shí)就是人一生的寫照,Tomcat就是這個(gè)社會(huì)。人的經(jīng)歷首先是從出生開始的,對Servlet而言就是調(diào)用init()方法,想想看,人的一生能出生多少次啊?就一次,Servlet中init()的方法也只能調(diào)用一次,一般都是在Servlet第一次運(yùn)行時(shí)加載init()方法,你也可以設(shè)置為服務(wù)器啟動(dòng)的時(shí)候加載。人出生后,隨著年紀(jì)的增長,你就必須得投入到工作去,身體有缺陷的例外,而且工作不是說你只做一次,只要有需要,你就必須得做,重復(fù)的做。BOOS的命令,誰敢不服從,要不立刻吵你魷魚。對Servlet而言也是一樣,只是它沒有抵觸情緒而已,哈。它也是不斷的運(yùn)行doGet(), doPost()等方法,當(dāng)中有可能出現(xiàn)異常。人總有一天是會(huì)死亡的,死亡的確定有兩種,一種是的的確確死了,他的尸體就躺在你面前,另外一種是他失蹤了多少年,從法律的角度上判斷,他是死亡了,他的老婆擁有了合法改嫁的權(quán)利。對Servlet而言,它的死亡方式也有兩種:一種是服務(wù)器關(guān)閉,也就是的的確確死了,另外一種是該Servlet長時(shí)間不使用,Tomcat判斷其死亡,Servlet的生命周期到此結(jié)束。

            2. Servlet響應(yīng)

          使用響應(yīng)只是為了向客戶發(fā)送數(shù)據(jù),會(huì)對響應(yīng)調(diào)用兩個(gè)方法:

          setContentType()

          getWriter()

           

          image

          posted on 2008-12-18 16:14 peterJ 閱讀(2061) 評(píng)論(1)  編輯  收藏 所屬分類: Servlet&JSP

          評(píng)論

          # t&JSP學(xué)習(xí)之Servlet的請求和響應(yīng)[未登錄] 2016-07-12 16:04 abc

          sdvdsvndskvjdkvbjk  回復(fù)  更多評(píng)論   

          <2016年7月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 调兵山市| 菏泽市| 阿拉善盟| 方城县| 遂川县| 虎林市| 大埔区| 芦溪县| 鹤山市| 海丰县| 岚皋县| 晋城| 呼伦贝尔市| 蒲江县| 英德市| 惠东县| 黎川县| 芜湖市| 深泽县| 横山县| 龙口市| SHOW| 大理市| 新兴县| 壶关县| 大竹县| 阿城市| 洛川县| 新巴尔虎右旗| 汾阳市| 资溪县| 务川| 仙居县| 普宁市| 曲水县| 唐山市| 太仆寺旗| 西华县| 连城县| 武夷山市| 青海省|