首先說說我們知道的服務器,比如 IIS, Tomcat, Jboss等.它們都與web利用有關,IIS是1種Web服務組件,包括Web服務器,FTP服務器,NNTP服務器和SMTP服務器; Tomcat屬于輕量級Web服務器,中小型項目中我們常常用到; Jboss屬于重量級的Web利用服務器,包括EJB容器和Web服務器,我們的ITOO項目用的就是Jboss.
我們來看看Web服務器和Web利用的關系.
Web服務器與Web利用屬于不同的范疇,它們間需要借助標準的接口來協作,Servlet是主要的1個接口.
Servlet容器:
它是JavaWeb利用中最核心,最經常使用的組件.我們還記得在web.xml文件中配置過Servlet元素,這是由于客戶要求訪問特定Servlet前,Servlet容器需要創建1系列與Servlet有關的對象.我們來了解下這1進程.
客戶端發出1個要求,有求就得有應啊,因而Servlet容器就站出來它說要接收,接收完要求得干活啊,因而它得解析這個要求,因而左創建1個ServletRequest對象,(包括了客戶要求等信息).右創建1個ServletResponse對象.當Servlet容器調用特定Servlet的service方法的時候,ServletRequest和ServletResponse就被悄悄地送進去做參數了.特定的Servlet這下高興了,從ServletRequest對象中獲得客戶要求信息,利用ServletResponse對象生成相應結果.Servlet容器1看,哇塞,結果出來了,轉手就發給客戶了.
Servlet容器是個神馬玩意呢?好像它并沒干多少活,就是要了客戶的需求,造了兩個小兵,讓小兵背走需求去弄,它還告知小兵在service方法調用的時候,它要把需求倒背如流,弄完了就讓另外一個小兵把結果給運回來.容器創造了對象并讓對象調和工作,并能對外進行良好的溝通.嘖嘖嘖,很牛.
說得好不如畫的好,有圖有真相.
Servlet接口:
所有的Servlet都實現了Servlet接口,接口中有5個方法.分別是:
Init();
Service();
destory();
getServletConfig();
getServletInfo();
其中,Init(),Service()和destory()是由容器調用的,在不同的Servlet生命周期階段分別調用.容器初始化1個Servlet對象時,創建1個ServletConfig對象,包括這個Servlet的初始化參數信息.ServletConfig對象只對1個Servlet有效,不能被另外一個Servlet訪問到.
在Servlet相干的對象中還有1個ServletContext對象,ServletContext和ServletConfig不同的是:ServletContext對任何Servlet都有效,是全局對象.我們會在下篇博客中對這2者進行詳細的了解.
上一篇 [置頂] Android三種實現Tab界面效果的方法,ViewPager + Fragment
下一篇 Red Hat Enterprise Linux Server release 6.4 x64 安裝 yum 源