亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

tomcat組成及原理

系統 1816 0
    Tomcat安裝好后打開目錄;可以看到如下結構:
    

bin :存放服務器腳本;

conf :存放配置文件;

lib :存放需要的JAR文件;

wabapps :存放需要發布的Web應用程序及其部署文件;

work :存放jsp 文件編繹生成的class文件;

logs :存放日志文件;

在conf目錄下可以看到 Catalina 目錄,context.xml, web.xml, server.xml 等(一些不是很重要的就不列出來了)。

server.xml 被稱為Tomcat的主配置文件或全局配置文件,它完成兩個任務:
1)提供Tomcat組件的初始配置
2)說明Tomcat的結構,含義,使Tomcat通過實例化組件完成啟動及構建自身。

server.xml中描述的重要元素有?Server?,Service?,Connector?,Engine?,Host?,Context?.
結構如下:
Tomcat-配置及原理
它們的用處是:

Server:
頂層元素,整個配置文件的根元素,表示整個Servlet容器或者Tomcat服務器包含多個Listener,一個GlobalNamingResources和一個Service

Service:
一組Connector和一個Engine的集合,這組Connector共用一個Engine來處理所有Connector收到的請求,負責處理<Connector>所獲得到的客戶請求

Listener組:?
監聽器,用來管理Tomcat生命周期和全局資源

GlobalNamingResources:
配置系統的JNDI(Java Naming and Directory Interface)

Connector組:
連接器,代表外部客戶之間的接口,將在一個指定的接口上偵聽客戶請求,并將獲得的請求交給<Engine>進行處理,然后把處理結果返回給客戶

Engine:?
引擎,處理<Service>中的所有客戶請求,具體來說,獲得一個<Connectors>交給的請求后,把這個請求匹配到某個<Host>上進行處理,如果沒有找到合適的<Host>來進行處理,則把這個請求交給一個默認虛擬主機處理。

Host組:
虛擬主機,處理一個特定主機的請求,一般來說,每個虛擬主機都可以配置一個到多個Web應用,每個Web應用對應一個<Context>,<Host>獲得的請求最終匹配到某個<Context>上,由它進行處理。

Context組:?
Web應用組,每個Web應用由一個或多個Servlet組成,當<Context>獲得一個請求后,將映射/conf/web.xml文件中的<servlet>元素,匹配一個Servlet類進行處理并返回。當一個Web應用被初始化的時候,它將用自己的ClassLoader對象載入web.xml中定義的每個Servlet類。

我們啟動Tomcat,在瀏覽器中輸入:http://localhost:8080/ 會打開Tomcat的默認頁面。實際上,這個頁面是在Tomcat安裝目錄下的:/webapps/root/index.jsp;/webapps是Tomcat服務器用來存放Web應用的目錄,每個Web應用都將在這建立各自的子目錄,剛裝好的Tomcat服務器虛擬主機的默認目錄是/webapps/ROOT,所以默認會打開這個目錄下的文件。流程如下:
在/conf目錄下的web.xml配置文件中有如下配置:
<welcome-file-list>
????????<welcome-file>index.html</welcome-file>
????????<welcome-file>index.htm</welcome-file>
????????<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
這里正是用來配置首頁的,Tomcat將按順序找出<welcome-file>標簽中的內容作為首頁。而在我們的目錄下,它只找到了index.jsp,所以會顯示它;
但我們不能將所有的Web程序都放在ROOT里。所以我們需要更改Tomcat的虛擬目錄;

要設置虛擬路徑,需要在server.xml文件的<Host></Host>中的Web應用添加一個<Context>子元素,實際上是配置了一個Web應用的物理存放地址到Tomcat虛擬路徑的過程,使得Tomcat能夠正確找到Web應用的物理存放路徑;
步驟:
1)在server.xml的<Host></Host>中加上如下代碼:
<Context docBase="D:/myApp" path="/myapp" reloadable="true"></Context>
2)我們把寫好的Web應用中的所有文件放到下面的目錄中:D:/myapp/test
3)重啟Tomcat,在瀏覽器中輸入:http://localhost:8080/test 即可測試

web.xml
Tomcat目錄下/conf 可為不同的應用程序配置不同的上下文環境;用來對Servlet進行映射;
一個Web應用的根目錄下的/WEB-INF目錄中也有一個web.xml,當部署一個Web應用時,總是先加載/conf/web.xml,然后才加載自己Web應用的/WEB-INF/web.xml文件;但處理過程中,總是先使用自己的web.xml配置文件,如果無法處理,才把它交給Tomcat的web.xml文件。
    
      
        http://localhost:8080/wsota/wsota_index.jsp
      
    
  
    
      
        1) 請求被發送到本機端口8080,被在那里偵聽的Coyote HTTP/1.1 Connector獲得
      
    
    
2) Connector把該請求交給它所在的Service的Engine來處理,并等待來自Engine的回應
3) Engine獲得請求localhost/wsota/wsota_index.jsp,匹配它所擁有的所有虛擬主機Host
4) Engine匹配到名為localhost的Host(即使匹配不到也把請求交給該Host處理,因為該Host被定義為該Engine的默認主機)
5) localhost Host獲得請求/wsota/wsota_index.jsp,匹配它所擁有的所有Context
6) Host匹配到路徑為/wsota的Context(如果匹配不到就把該請求交給路徑名為""的Context去處理)
7) path="/wsota"的Context獲得請求/wsota_index.jsp,在它的mapping table中尋找對應的servlet
8) Context匹配到URL PATTERN為*.jsp的servlet,對應于JspServlet類
9) 構造HttpServletRequest對象和HttpServletResponse對象,作為參數調用JspServlet的doGet或doPost方法
10)Context把執行完了之后的HttpServletResponse對象返回給Host
11)Host把HttpServletResponse對象返回給Engine
12)Engine把HttpServletResponse對象返回給Connector
13)Connector把HttpServletResponse對象返回給客戶browser

tomcat組成及原理


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 色姑娘久| 日韩我不卡 | 国产亚洲精品sese在线播放 | 狠狠色噜噜狠狠狠8888米奇 | 精品视频久久久久 | 国产成人免费观看在线视频 | 亚洲视频在线免费观看 | 中文字幕在线激情日韩一区 | 国产成视频 | 日本人69视频页码jlzz | 亚洲国产一区在线二区三区 | 四虎永久 | 91成人免费观看在线观看 | 久久精品国产99久久6动漫欧 | 国内精品欧美久久精品 | 国产福利在线看 | www.五月天婷婷 | 国产午夜偷精品偷伦 | 伊人久久精品线影院 | 久久青草免费免费91线频观看 | 黄页成人免费网站 | 羞羞视频免费网站在线 | 一级特黄国产高清毛片97看片 | 国产精品免费久久久免费 | 毛片免费永久不卡视频观看 | 亚洲精品一区二区三区在线播放 | 国产手机在线视频放线视频 | 青春禁区视频在线观看动漫版 | 爱我久久国产精品 | 色综合视频一区二区观看 | 日韩精品一区二区三区中文字幕 | 99热久久国产这里是精品 | 五月久久婷婷综合片丁香花 | 久久青草18免费观看网站 | 国产一区二区在线视频 | 欧美jizzhd欧美巨大 | 在线观看免费av网站 | 免费aa毛片 | 国产在线视精品麻豆 | 91www成人久久| 九九热精品视频在线观看 |