tomcat - 中文百科知識
文章推薦指數: 80 %
Tomcat是一個小型的輕量級套用伺服器,在中小型系統和並發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程式的首選。
對於一個初學者來說,可以這樣認為,當在一台 ...
tomcat Tomcat伺服器是一個免費的開放原始碼的Web套用伺服器。
Tomcat是Apache軟體基金會(ApacheSoftwareFoundation)的Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發而成。
由於有了Sun的參與和支持,最新的Servlet和JSP規範總是能在Tomcat中得到體現,Tomcat5支持最新的Servlet2.4和JSP2.0規範。
因為Tomcat技術先進、性能穩定,而且免費,因而深受Java愛好者的喜愛並得到了部分軟體開發商的認可,是目前比較流行的Web套用伺服器。
基本信息中文名稱:湯姆貓外文名:ApacheTomcat別名:tomcat發布屬性:共享開發者:Apache軟體基金會性質:JavaWeb伺服器最新版本:8.0屬於:Apache軟體基金會基本簡介tomcatTomcat很受廣大程式設計師的喜歡,因為它運行時占用的系統資源小,擴展性好,支持負載平衡與郵件服務等開發套用系統常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程式設計師都可以更改它或在其中加入新的功能。
Tomcat是一個小型的輕量級套用伺服器,在中小型系統和並發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程式的首選。
對於一個初學者來說,可以這樣認為,當在一台機器上配置好Apache伺服器,可利用它回響對HTML頁面的訪問請求。
實際上Tomcat部分是Apache伺服器的擴展,但它是獨立運行的,所以當你運行tomcat時,它實際上作為一個與Apache獨立的進程單獨運行的。
這裡的訣竅是,當配置正確時,Apache為HTML頁面服務,而Tomcat實際上運行JSP頁面和Servlet。
另外,Tomcat和IIS、Apache等Web伺服器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。
不過,Tomcat處理靜態HTML的能力不如Apache伺服器。
版本簡介版本對照表:Servlet/JSPSpecApacheTomcatversion———————————————————————2.5/2.16.0.142.4/2.05.5.252.3/1.24.1.362.2/1.13.3.2容器概述tomcatTomcat是一個免費的開源的Servlet容器,它是Apache基金會的Jakarta項目中的一個核心項目,由Apache,Sun和其它一些公司及個人共同開發而成。
由於有了Sun的參與和支持,最新的Servlet和Jsp規範總能在Tomcat中得到體現。
Tomcat被JavaWorld雜誌的編輯選為2001年度最具創新的java產品,可見其在業界的地位。
Tomcat4.0x中採用了新的Servlet容器:Catalina,完整的實現了Servlet2.3和Jsp1.2規範。
Tomcat提供了各種平台的版本供下載,可以從其官方網站上下載其原始碼版或者二進制版。
由於Java的跨平台特性,基於Java的Tomcat也具有跨平台性。
與傳統的桌面應用程式不同,Tomcat中的應用程式是一個WAR(WebArchive)檔案。
WAR是Sun提出的一種Web應用程式格式,與JAR類似,也是許多檔案的一個壓縮檔。
這個包中的檔案按一定目錄結構來組織:通常其根目錄下包含有Html和Jsp檔案或者包含這兩種檔案的目錄,另外還會有一個WEB-INF目錄,這個目錄很重要。
通常在WEB-INF目錄下有一個web.xml檔案和一個classes目錄,web.xml是這個套用的配置檔案,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類(如JavaBean)。
通常這些所依賴的類也可以打包成JAR放到WEB-INF下的lib目錄下,當然也可以放到系統的CLASSPATH中,但那樣移植和管理起來不方便。
程式部署tomcat在Tomcat中,應用程式的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個檔案,並將其解壓。
你在瀏覽器中訪問這個套用的Jsp時,通常第一次會很慢,因為Tomcat要將Jsp轉化為Servlet檔案,然後編譯。
編譯以後,訪問將會很快。
另外Tomcat也提供了一個套用:manager,訪問這個套用需要用戶名和密碼,用戶名和密碼存儲在一個xml檔案中。
通過這個套用,輔助於Ftp,你可以在遠程通過Web部署和撤銷套用。
當然本地也可以。
Tomcat不僅僅是一個Servlet容器,它也具有傳統的Web伺服器的功能:處理Html頁面。
但是與Apache相比,它的處理靜態Html的能力就不如Apache.可以將Tomcat和Apache集成到一塊,讓Apache處理靜態Html,而Tomcat處理Jsp和Servlet.這種集成只需要修改一下Apache和Tomcat的配置檔案即可。
Tomcat提供Realm支持。
Realm類似於Unix裡面的group.在Unix中,一個group對應著系統的一定資源,某個group不能訪問不屬於它的資源。
Tomcat用Realm來對不同的套用(類似系統資源)賦給不同的用戶(類似group)。
沒有許可權的用戶則不能訪問這個套用。
Tomcat提供三種Realm,1:JDBCRealm,這個Realm將用戶信息存在資料庫里,通過JDBC獲得用戶信息來進行驗證。
2:JNDIRealm,用戶信息存在基於LDAP的伺服器里,通過JNDI獲取用戶信息。
3:MemoryRealm,用戶信息存在一個xml檔案裡面,上面講的manager套用驗證用戶時即使用此種Realm.通過Realm可以方便地對訪問某個套用的客戶進行驗證。
在Tomcat4中,你還可以利用Servlet2.3提供的事件監聽器功能,來對你的套用或者Session實行監聽。
Tomcat也提供其它的一些特徵,如與SSL集成到一塊,實現安全傳輸。
還有Tomcat也提供JNDI支持,這與那些J2EE套用伺服器提供的是一致的。
說到這裡要介紹一下通常所說的套用伺服器(如WebLogic)與Tomcat有何區別。
套用伺服器提供更多的J2EE特徵,如EJB,JMS,JAAS等,同時也支持Jsp和Servlet.而Tomcat則功能沒有那么強大,它不提供EJB等支持。
但如果與JBoss(一個開源的套用伺服器)集成到一塊,則可以實現J2EE的全部功能。
既然套用伺服器具有Tomcat的功能,那么Tomcat有沒有存在的必要呢?事實上,的很多中小套用不需要採用EJB等技術,Jsp和Servlet已經足夠,這時如果用套用伺服器就有些浪費了。
而Tomcat短小精悍,配置方便,能滿足的需求,這種情況下自然會選擇Tomcat。
基於Tomcat的開發其實主要是Jsp和Servlet的開發,開發Jsp和Servlet非常簡單,你可以用普通的文本編輯器或者IDE,然後將其打包成WAR即可。
這裡要提到另外一個工具Ant,Ant也是Jakarta中的一個子項目,它所實現的功能類似於Unix中的make。
你需要寫一個build.xml檔案,然後運行Ant就可以完成xml檔案中定義的工作,這個工具對於一個大的套用來說非常好,只需在xml中寫很少的東西就可以將其編譯並打包成WAR。
在很多套用伺服器的發布中都包含了Ant.另外,在Jsp1.2中,可以利用標籤庫實現Java代碼與Html檔案的分離,使Jsp的維護更方便。
Tomcat也可以與其它一些軟體集成起來實現更多的功能。
如與上面提到的JBoss集成起來開發EJB,與Cocoon(Apache的另外一個項目)集成起來開發基於Xml的套用,與OpenJMS集成起來開發JMS套用,除了提到的這幾種,可以與Tomcat集成的軟體還有很多。
安裝方法tomcat一、準備工作在開始安裝之前,先準備J2SDK和TOMCAT兩個軟體,如果已經安裝了J2SDK,就只需TOMCAT即可。
使用的軟體如下:J2SDKv1.4.2_04-http://java.sun.com/j2se/1.4.2/download.htmlTOMCATv5.0.28-http://apache.linuxforum.net/dist/jakarta/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28.exe二、安裝J2SDK安裝很簡單,只需雙擊下載的檔案,選擇安裝在d:j2sdk1.4.2_04目錄下,設定環境變數,方法如下:右擊“我的電腦”==》屬性==》高級==》環境變數==》新建 變數名:JAVA_HOME變數值:d:j2sdk1.4.2_04三、安裝TOMCAT運行jakarta-tomcat-5.0.28.exe按照提示安裝,這裡選擇了Service,就是作為Windows服務來運行。
如果要改變安裝路徑,可以在這個步驟操作,偶這裡選擇安裝在D:Tomcat5.0在這裡設定TOMCAT使用的連線埠以及WEB管理界面用戶名和密碼,請確保該連線埠未被其他程式占用選擇J2SDK的安裝路徑,安裝程式會自動搜尋,如果沒有正確顯示,則可以手工修改,偶這裡改為d:j2sdk1.4.2_04接下來就開始拷貝檔案了,成功安裝後,程式會提示啟動tomcat並查看readme文檔。
Tomcat正常啟動後會在系統欄載入圖示。
在圖示上右鍵滑鼠可以看到一些設定項目點擊Configure或者雙擊圖示可看到如下顯示,選擇Startuptype為automatic自動啟動,這樣每次開機後就會自動運行TOMCAT。
另外也可在這個界麵點擊start或stop按鈕來控制tomcat的運行。
四、測試至此安裝與配置都已完成,打開瀏覽器輸入:http://localhost:8080即可看到TOMCAT的相關信息五、備註由於偶將TOMCAT作為service方式安裝,所以CATALINA_HOME環境變數也沒設過,如果讀者不是按照這種方式請設定一個系統環境變數,設定方法同J2SDK。
變數名:CATALINA_HOME變數值:d:Tomcat5.0另外可再增加一個環境變數變數名:CLASSPATH變數值:%JAVA_HOME%libdt.jar;%JAVA_HOME%libtool.jar;%JAVA_HOME%libtools.jar;%CATALINA_HOME%commonlibservlet-api.jar;%CATALINA_HOME%commonlibjsp-api.jar也是因為service安裝的原因,在執行一些程式的時候會出現如下錯誤信息:Unabletofindajavaccompiler;com.sun.tools.javac.Mainisnotontheclasspath.PerhapsJAVA_HOMEdoesnotpointtotheJDK錯誤信息是沒有設定過JAVA_HOME環境變數,讀者也可能碰到過這個問題,明明設定過這個環境變數,在服務里啟動就會出錯,但是在命令行下輸入D:Tomcat5.0binstartup.bat啟動卻能運行,在服務里啟動沒有讀取JAVA_HOME這個環境變數,而是在配置里定義這個環境變數的,於是偶在JavaOptions里加入了一句:-Djava.home=d:j2sdk1.4.2_04,再次啟動TOMCAT就OK了,參照下圖:未來前景tomcat分析公司ForresterResearch的分析師這樣評價Tomcat:“Tomcat可能是排在ApacheWeb伺服器和MySQL資料庫之後使用最多的開源產品。
”BZ最新的調查研究則為此提供了有力的證據:ApacheTomcat是Java社區最常用的套用伺服器??64%的Java開發者選擇使用Tomcat。
Tomcat之所以大受歡迎原因主要有以下五點:1、Tomcat是Apache的核心項目之一,也被SUN視作Servlet/JSP容器的一個重要參考實現而加以支持。
因此SUN最新的Servlet/JSP規範,往往能夠很快地在Tomcat的新版本中得到體現;2、Tomcat是一個小巧精緻的web套用伺服器,配置、安裝、運行、部署web套用都很簡單,這讓用戶能夠很快地上手使用;3、開源軟體的生命力,往往與其社區的狀況有緊密的聯繫。
在一個健康、活躍的社區,用戶的疑問通常能夠及時地解決,用戶的反饋往往能夠得到有效地處理,這樣會吸引更多的用戶加入到社區中來;反過來,不斷擴大的用戶群,也會促進社區的發展。
Tomcat所擁有的優秀社區,對開發者而言,無論用什麼標準來評價,都是充滿吸引力的;4、編寫良好的文檔,是開發者在開發中最好的幫手之一。
Apache在開源社區中,無疑是撰寫文檔方面的佼佼者;5、因為開源和免費的特性,使得用戶可以自由無障礙地下載、安裝、使用Tomcat。
這也是Tomcat能夠被廣泛使用的重要原因之一。
Tomcat最初是作為Servlet/JSP容器的參考實現而進行設計開發的,在性能方面,並沒有做過多的考量。
經過幾年的時間,Apache發現Servlet/JSP容器並非只是J2EE環境的一部分而已。
大量web套用並不需要J2EE這樣的龐然大物,完全可以將Tomcat作為一個單獨的web套用伺服器來使用。
這實際也正是Tomcat受歡迎的另一原因所在很多開發者不需要如EJBs、JMS、分散式事務處理等J2EE組件。
RodJohnson在他的《J2EEDevelopmentwithoutEJB》一書中,指出了J2EE的許多不足之處。
比如說,傳統J2EE(JavaEE5之前的J2EE)中的EntityEJB是不怎么招人喜歡的。
在JavaEE5中,過時的EntityEJB組件被淘汰掉,數據持久化的工作,交給了深受Hibernate此類ORM工具影響的JPA來完成。
分散式對象在大多數情況下,也是不合時宜的。
MartinFowler在《企業套用架構模式》中分散式對象設計的第一原則就是不要分布你的對象。
他給出的建議是將所有的組件部署到集群中的每一個節點中去。
因而對於大部分web套用,Tomcat套用伺服器就能滿足需求。
通過諸如Spring-Struts-Hibernate這樣的組合,可以快速而靈活地開發出能夠滿足複雜業務需求的web系統來。
在開發實踐中除了Tomcat賀煒還使用過Resin,就二者的性能方面,Resin2.x的性能比同時期的Tomcat要好不少。
但是Tomcat自設計實現了全新的Catalina引擎之後,在性能方面的問題便持續得到改善。
而Resin在步入3.x版本後,劃分成免費的OpenSource版本和收費的Pro版本。
有相當多的測試表明,Resin3.xOS的性能,與Tomcat5/6相比要低得多;在配置方面,同Resin相比,Tomcat還是顯得稍微繁瑣一點。
對於中國的開發者而言,為了避免系統中出現亂碼,往往還需要對Tomcat進行一些額外的配置才可以。
而Resin在這一方面表現得很好,在絕大多數情況下,基本上不用做任何配置就能正常處理中文而不會出現亂碼的問題。
在Resin3.xPro中,提供了諸如快取、集群等高級特性,倘若Tomcat在這方面有所加強,對於開發者而言無疑是非常美好的一件事情。
Tomcat未來的趨勢,Tomcat無疑是使用最為廣泛的web套用伺服器之一,完全有理由相信這樣的情況至少還會持續數年。
但是天邊已經出現兩朵小小的、令人不安的烏雲。
RubyonRails所展現的開發方式與它所產生的高生產率,給予Java開發者們的震撼很大。
如果Java社區不能及時有效地改進web套用開發的方式,那么包括Tomcat在內的眾多Java社區都會受到RoR不小的衝擊。
可能正如BruceTate所預言的那樣,Java在未來將更加著重於解決更複雜的事情,而普通web套用開發領域,則會逐步讓位給像RoR這樣高度靈活快速的技術。
相關詞條 tomcat Tomcat伺服器是一個免費的開放原始碼的Web套用伺服器。
Tomcat是Apache軟體基金會(ApacheSoftwareFoundation)... 基本簡介 版本簡介 容器概述 程式部署 安裝方法 泰安TomcatI815E 泰安TomcatI815E所屬一款電腦主機板,內建硬體監測晶片,一個AGP插槽,六個32-bitPCI插槽。
基本資料 泰安TomcatI810E 泰安TomcatI810E所屬一款電腦主機板,內建硬體監測晶片,內建4MB(10ns)顯存。
基本資料 泰安TomcatI810EP teltelCPU描述:Intel 基本資料 泰安Tomcati810 Codec音效晶片晶片廠商:IntelCPU描述:InCeleron 基本資料 泰安TomcatK8E 基本資料主晶片組:nVIDIAnForce4Ultra適用平台:AMD平台集成晶片:顯示卡/網卡CPU插槽:Socket93... apachetomcat Apache是普通伺服器,本身只支持html即普通網頁。
不過可以通過外掛程式支持php,還可以與Tomcat連通(單向Apache連線Tomcat,就是說通... 區別 產品 測評 漏洞 泰安Tomcati810ef(S2420) 泰安Tomcati810ef(S2420)是一款數碼產品,網卡晶片是Intel82559LANcontroller/10/100Mpgsd... 基本資料 相關搜尋3Q戰爭開心網跆拳道youtube雲計算情色五月天亮眼晴系統維基解密伺服器JAVA劉德華WEB聊天輪盤熱門詞條afccompoundlamseminarworkout《嫌疑犯X的獻身》吳耀漢哈瓦那咖啡館大聖傳市府轉運站府中站摩斯日月神功日本米糠油事件日本航空最炫民族風東元變頻器燒錄光碟發飆美素苦茶油藥膳排骨防風通聖散飄流Me2mysterysummit三安光電叫阮的名后街男孩味王股份有限公司好歹攏是命孫涵宜家宜居小蜜蜂帕薩特領馭弗里德里希·李斯特無敵鐵金剛牽牛的夏天租房子繪聲繪影達爾文進化論隋文帝高校新人催淚動漫分離性障礙台北公車台北商業技術學院房屋貸款盆栽奶茶福克斯新聞頻道高群tomcat@百科知識中文網
延伸文章資訊
- 1Apache Tomcat - 維基百科,自由的百科全書
Tomcat是由Apache軟體基金會屬下Jakarta專案開發的Servlet容器,按照Sun Microsystems提供的技術規範,實現了對Servlet和JavaServer Page(...
- 2在Apache Tomcat 上部署說明系統 - IBM
如果您在要部署說明的伺服器上未安裝產品,您可以在Apache Tomcat 應用程式伺服器上部署說明。
- 3使用全方位安裝程式升級Apache Tomcat (Windows)
Apache Tomcat 是執行ESET PROTECT Web Console 所需的必要元件。 ... 我們建議當現有的Apache Tomcat 安裝為透過全方位安裝程式執行時,進行此升...
- 4Apache Tomcat - 维基百科,自由的百科全书
Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(...
- 5Apache Tomcat® - Welcome!
The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Serv...