欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Tomcat-配置及原理

系統 1950 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文件。

當用戶在瀏覽器中輸入一個JSP文件地址:
http://localhost:8080/test/index.jsp
提交的請求最終由一個具體的Servlet來進行處理。我們請求傳遞的過程如下:
1)請求首先到達商品為8080的<Connector>,然后把該請求交給<Engine>引擎處理;
2)<Engine>將這個請求匹配到某個<Host>去處理,因為這里<Engine>默認處理的<Host>是localhost,所以請求傳遞到name屬性是localhost的<Host>。
3)<Host>根據地址串中的子目錄為"test",獲知能夠處理該請求的Servlet存放在虛擬目錄為"test"的Web應用中,于是通過查找<Context>元素,找到path="test" 的<Content>,然后根據<Content>中的物理路徑"docBase"的屬性值查找Web應用的物理地址;
4)服務器根據對應的Web應用的“WEB_INF/web.xml”配置文件,查找能夠處理index.jsp的servlet;


如上圖所示:
connector負責接收客戶請求,并向客戶返回響應結果.在同一個service中,多個connector共享同一個Engine,同一個Engine可以有多個Host,一個Host可以有多個context;一個context對應一個web項目.在運行時,一個Tomcat會給每個context生成一個ServletContext類的實例.

Tomcat-配置及原理


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 午夜在线免费观看 | 色人人 | 啪啪小视频| 毛片a在线 | 色综合97天天综合网 | 亚洲国产日本 | 国产乱在线观看视频 | 欧美ab在线| 欧美精品 在线观看 | 国产色吧 | 免费国产黄频在线观看视频 | 五月中文字幕 | 国产乱人乱精一区二区视频密 | 白白操在线视频 | 欧美大片一区二区三区 | 黄色网址进入 | 国产人A片777777久久 | 国产成人免费视频网站高清观看视频 | 国产精品免费av | 日韩欧美福利视频 | 無码一区中文字幕少妇熟女H | 日本黄色视 | 色精品| 日韩美女一区二区三区在线观看 | 亚洲国产一区在线 | 99热在线播放 | 亚洲欧美国产精品久久久久久久 | 欧洲精品在线视频 | 日本阿v无码观看dvd | 久久精品视频免费观看 | 久草视频电影 | 可以免费观看的av | 国产精品福利资源在线 | 日本高清无遮挡 | 欧美毛片aaa激情 | 91看片在线观看 | 欧美日韩在线电影 | 国产一级一级一级成人毛片 | 国产精品久久嫩一区二区免费 | 精品欧美| 久草社区在线 |