Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。
因為Tomcat 技術先進、性能穩定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟件開發商的認可,成為目前比較流行的Web 應用服務器。
Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器,屬于輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP 程序的首選。
對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache 服務器,可利用它響應HTML(標準通用標記語言下的一個應用)頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。
訣竅是,當配置正確時,Apache 為HTML頁面服務,而Tomcat 實際上運行JSP 頁面和Servlet。另外,Tomcat和IIS等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。不過,Tomcat處理靜態HTML的能力不如Apache服務器。
問題1:那JavaWeb的應用為什么要在部署tomcat上呢?
原因如下:
1.首先要使用http訪問到web應用的服務器需要開一個端口來監聽請求。
2.既然使用的是http協議,那么也需要解析來自網絡的http請求。
3.解析了之后需要訪問到對應的應用系統。
4.系統處理了請求之后返回的結果集,需要返回給用戶讓用戶能在瀏覽器中展示。
中間件(tomcat)就是幫你完成了上述的事情。
開啟監聽端口監聽用戶的請求,解析用戶發來的http請求然后訪問到你指定的應用系統,然后你返回的頁面經過tomcat返回給用戶。
在舉個更形象的例子:
普通的html,瀏覽器可以直接搞定。
但是如servlet這些,瀏覽器沒法直接將里面的內容解析出來。這些就需要一個工具進行處理。
讓瀏覽器能夠在訪問主機的時候,將這些信息正確的識別出來。
普通的web,猶如你去外面燒烤。你只要拿著肉去,自己烤著吃就行了。
動態web,如同你去吃飯店吃宴席,即使你帶些豬肉,牛肉,青菜,油鹽過去,你根本就無法達到自己目的。
宴席,肯定比比一般的燒烤更加讓人羨慕。
但是,宴席必須需要一個廚師團隊在里面進行工作,方能夠保證客人能夠享用。
類比的話,tomcat,就相當于飯店里的廚師服務員團隊。
問題2:tomcat運行需要JDK嗎?為什么?
需要jre即可,有jre 就可以運行. jdk 是供開發的編譯工具, jre :java 代碼運行環境.tomcat 中是一個java解析器.所以他只需要jre即可。
因為tomcat是用java寫的,所以運行需要JRE,就是JAVA運行時刻環境,所以必須通過安裝JDK來得到這個運行環境,不裝JDK裝JRE也行,sun的網站上有下載。但是JRE只是運行時刻化境,不能編譯JAVA源程序。