小小六

          學(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 閱讀(2060) 評論(1)  編輯  收藏 所屬分類: Servlet&JSP

          評論

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

          sdvdsvndskvjdkvbjk  回復(fù)  更多評論   

          <2008年12月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 五台县| 永德县| 隆德县| 天全县| 同心县| 抚顺市| 德昌县| 九台市| 东兴市| 威宁| 普兰店市| 竹山县| 永登县| 景宁| 通渭县| 拜城县| 麻城市| 渑池县| 内乡县| 漠河县| 香港 | 罗平县| 武宣县| 平乐县| 信丰县| 宿迁市| 拉萨市| 茶陵县| 行唐县| 五指山市| 巴彦淖尔市| 盐池县| 贵溪市| 香格里拉县| 五河县| 醴陵市| 三台县| 阿图什市| 兴化市| 常山县| 平果县|