Tomcat 學(xué)習(xí)

Tomcat是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開發(fā)而成。

因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。

Tomcat 服務(wù)器是一個(gè)免費(fèi)的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。

對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)HTML(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用)頁面的訪問請求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。

訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁面和Servlet。另外,Tomcat和IIS等Web服務(wù)器一樣,具有處理HTML頁面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。

問題1:那JavaWeb的應(yīng)用為什么要在部署tomcat上呢?

原因如下:

1.首先要使用http訪問到web應(yīng)用的服務(wù)器需要開一個(gè)端口來監(jiān)聽請求。
2.既然使用的是http協(xié)議,那么也需要解析來自網(wǎng)絡(luò)的http請求。
3.解析了之后需要訪問到對(duì)應(yīng)的應(yīng)用系統(tǒng)。
4.系統(tǒng)處理了請求之后返回的結(jié)果集,需要返回給用戶讓用戶能在瀏覽器中展示。

中間件(tomcat)就是幫你完成了上述的事情。
開啟監(jiān)聽端口監(jiān)聽用戶的請求,解析用戶發(fā)來的http請求然后訪問到你指定的應(yīng)用系統(tǒng),然后你返回的頁面經(jīng)過tomcat返回給用戶。

在舉個(gè)更形象的例子:

普通的html,瀏覽器可以直接搞定。
但是如servlet這些,瀏覽器沒法直接將里面的內(nèi)容解析出來。這些就需要一個(gè)工具進(jìn)行處理。
讓瀏覽器能夠在訪問主機(jī)的時(shí)候,將這些信息正確的識(shí)別出來。

普通的web,猶如你去外面燒烤。你只要拿著肉去,自己烤著吃就行了。
動(dòng)態(tài)web,如同你去吃飯店吃宴席,即使你帶些豬肉,牛肉,青菜,油鹽過去,你根本就無法達(dá)到自己目的。
宴席,肯定比比一般的燒烤更加讓人羨慕。
但是,宴席必須需要一個(gè)廚師團(tuán)隊(duì)在里面進(jìn)行工作,方能夠保證客人能夠享用。

類比的話,tomcat,就相當(dāng)于飯店里的廚師服務(wù)員團(tuán)隊(duì)。

問題2:tomcat運(yùn)行需要JDK嗎?為什么?

需要jre即可,有jre 就可以運(yùn)行. jdk 是供開發(fā)的編譯工具, jre :java 代碼運(yùn)行環(huán)境.tomcat 中是一個(gè)java解析器.所以他只需要jre即可。
因?yàn)閠omcat是用java寫的,所以運(yùn)行需要JRE,就是JAVA運(yùn)行時(shí)刻環(huán)境,所以必須通過安裝JDK來得到這個(gè)運(yùn)行環(huán)境,不裝JDK裝JRE也行,sun的網(wǎng)站上有下載。但是JRE只是運(yùn)行時(shí)刻化境,不能編譯JAVA源程序。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,551評(píng)論 19 139
  • 轉(zhuǎn)自陳明乾的博客,可能有一定更新。 轉(zhuǎn)原文聲明:原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時(shí)請務(wù)必以超鏈接形式標(biāo)明文章 原始出處 、...
    C86guli閱讀 4,877評(píng)論 6 72
  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,793評(píng)論 11 349
  • 0 系列目錄# WEB請求處理 WEB請求處理一:瀏覽器請求發(fā)起處理 WEB請求處理二:Nginx請求反向代理 本...
    七寸知架構(gòu)閱讀 14,243評(píng)論 22 189
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,673評(píng)論 18 399

友情鏈接更多精彩內(nèi)容