⑴ TOMCAT如何部署兩個java web項目
1、可以使用集群方式來部署。
2、集群方式可以採用nginx+tomcat方世基肢式來部署兩個或者多個Java web項目。
原理:
1、nginx作為集群,能夠搜世通過給出多個埠號來配鋒櫻合tomcat一起使用。
2、有了多個埠號,那麼Java項目即可通過不同的埠來進行訪問。
⑵ 關於在tomcat部署java程序
在Tomcat中部署Java Web應用程序有兩種方式:靜態部署和動態部署。在下文中$CATALINA_HOME指的是Tomcat根目錄。比如你的Tomcat放在F盤下,就是F:\Tomcat
一、靜態部署
靜態部署指的是我們在伺服器啟動之前部署我們的程序,只有當伺服器啟動之後,我們的Web應用程序才能訪問。以下3中方式都可以部署:假設你的java web應用程序是test
1、將test目錄拷貝到$CATALINA_HOME\webapps下,然後啟動伺服器就可以了。這種方式比較簡單,但是web應用程序必須在webapps目錄下。訪問地址如下:
http://localhost:8080/test/
2、這種方式可以不必將test目錄拷貝到webapps下,直接在F:\部署。方法如旦亮下,更改$CATALINA_HOME\conf\server.xml文件,在<host>標簽內添加<Context>標簽,內容如下:
<Context docBase="F:/test" reloadable="false" path="/test"/>
其中reloadable="false"表示當應用程序中的內容發生更改之後伺服器不會自動載入,這個屬性在開發階段通常都設為true,方便開發,在發布階段應該設置為false,提高應用程序的訪問速度。docBase為路徑,可以使用絕對路徑,也可以使用相對路徑,相對路徑相對於webapps。path屬性的值是訪問時的根地址。訪問地友知址如下:http://localhost:8080/test/
3、這種方式和第二種方式差不多,但是不是在Server.xml文件中添加Context標簽,而是在$CATALINA_HOME\conf\Catalina\localhost中添加一個xml文件,如test.xml,內容如下:
<Context docBase="F:/test" reloadable="false" />大家可能發現和第二種方式差不多,但是缺少了path屬性,這種方式伺服器會使用.xml的名字作為path屬性的值。訪問地址如下:http://localhost:8080/test/
我們剛才是將test文件夾部署在了伺服器中,我們知道可以將Web應用程序的內容打成.war包,然後在部署在伺服器上。打好遲消包請參考如下步驟:
1、打開命令提示符(開始-->運行-->cmd)
2、設置jdk環境變數
3、在命令提示符中進入F:\test文件後,鍵入如下命令:
jar ..\test.war *.* 這樣在F:\下應該有test.war文件。其中..表示當前目錄的父目錄。
部署test.war文件非常簡單,將剛才有docBase="F:\test"更改為docBase="F:\test.war"或者直接將其拷貝到webapps下也可以。重新啟動伺服器就可以將test.war部署為一個Web應用程序了。如果你夠細心的話你會發現,伺服器將test.war文件解開,並且在webapps下面又生成了一個test文件夾,然後把test.war的內容拷貝到裡面去了。我們可以通過以下方式取消自動解壓縮,配置方式如下:
<Context docBase="F:/test" reloadable="false" unpackWAR="false"/>
二、動態部署
動態部署是指可以在伺服器啟動之後部署web應用程序,而不用重新啟動伺服器。動態部署要用到伺服器提供的manager.war文件,如果在$CATALINA_HOME\webapps\下沒有該文件,你必須去重新下載tomcat,否則不能完成以下的功能。要想使用該管理程序必須首先編輯$CATALINA_HOME\conf\tomcat-users.xml文件,內容如下:關於這個文件的更多內容,請參考Java Web應用程序的安全模型二
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<user username="coresun" password="coresun" roles="manager"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
</tomcat-users>
然後在瀏覽器中鍵入如下地址:
http://localhost:8080/應該看到一個漂亮的加菲貓了吧。點擊左邊的Tomcat Manager鏈接,提示輸入用戶名和密碼,本文都是coresun,然後可以看到以下頁面:
在Context Path(option):中輸入/test
XML Configration file URL中要指定一個.xml文件,比如我們在F:\下建立一個test.xml文件,內容如下:
<Context reloadable="false" />docBase不用寫了,因為在下一個文本框中填入。或者更簡單點,這個文本框什麼都不填。
在WAR or Directory URL:中鍵入F:\testWet或者F:\test.war都可以,然後點擊Deploy按鈕,看看上面是不是已經看到了你web應用程序,名字就是你Context Path(option):中的名字。
如果你部署.war文件還有更加簡單的方式,下面還有個Select WAR file uploae點擊瀏覽選擇.war文件,然後點擊Deploy也可以。
推薦你使用第一種方式的第一個方法就行了,你直接把你java程序中的WebRoot文件夾及其所有的內容到$CATALINA_HOME\webapps 下,然後重命名就行了,比如重命名為test 那麼你啟動Tomcat後訪問的路徑就是http://localhost:8080/test
⑶ Java Web開發Tomcat中三種部署項目的方法
第一種方法 在tomcat中的conf目錄中 在server xml中的 <host/>節點中添加
<Context path= /hello docBase= D:eclipse debug= privileged= true >
</Context>
至於Context 節點屬性 可詳細見相關文檔
第二種方法 將web項目文件件拷貝到webapps 目錄中
第三種方法 很靈活 在conf目錄中 新建 Catalina(注意大小寫)\localhost目錄 在該目錄中新建一個xml文件 名字可以隨意取 只要和當前文件中的文件名不重復就行了 該xml文件的內容為
<Context path= /hello docBase= D:eclipse debug= privileged= true >
</Context>
第 個方法有個優點 可以定義別名 伺服器端運行的項目名稱為path 外部訪問的URL則使用XML的文件名 這個方法很方便的隱藏了項目的名稱 對一些項目名稱被固定不能更換 但外部訪問時又想換個路徑 非常有效
第 還有優點 可以定義一些個性配置 如數據源的配置等
還有一篇詳細的
直接放到Webapps目錄下
Tomcat的Webapps目錄是Tomcat默認的應用目錄 當伺服器啟動時 會載入所有這個目錄下的應用 也可以將JSP程序打包成一個war包放在目錄下 伺服器會自動解開這個war包 並在這個目錄下生成一個同名的文件夾 一個war包就是有特性格式的jar包 它是將一個Web程序的所有內容進行壓縮得到 具體如何打包 可以使用許多開發工具的IDE環境 如Eclipse NetBeans ant JBuilder等 也可以用cmd 命令 jar cvf applicationname war package *
甚至可以在程序執行中打包
try{
string strjavahome = system getproperty( java home )
strjavahome = strjavahome substring( strjavahome lastindexof(\))+ \bin\ ;
runtime getruntime() exec( cmd /c start +strjavahome+ jar cvf hello war c:\tomcat \webapps\root\* )
}
catch(exception e){system out println(e) }
webapps這個默認的應用目錄也是可以改變 打開Tomcat的conf目錄下的server xml文件 找到下面內容
<Host name= localhost debug= appBase= webapps unpackWARs= true autoDeloy= true xmlValidation= falase xmlNamespaceAware= false >
在server xml中指定
在Tomcat的配置文件中 一個Web應用就是一個特定的Context 可以通過在server xml中新建Context里部署一個JSP應用程序 打開server xml文件 在Host標簽內建一個Context 內容如下
<Context path= /myapp reloadable= true docBase= D:myapp workDir= D:myappwork />
其中path是虛擬路徑 docBase是JSP應用程序的物理路徑 workDir是這個應用的工作目錄 存放運行是生成的於這個應用相關的文件
創建一個Context文件
以上兩種方法 Web應用被伺服器載入後都會在Tomcat的confcatalinalocalhost目錄下生成一個XML文件 其內容如下
<Context path= /admin docBase= ${catalina home}/server/webapps/admin debug= privileged= true ></Context>
可以看出 文件中描述一個應用程序的Context信息 其內容和server xml中的Context信息格式是一致的 文件名便是虛擬目錄名 您可以直接建立這樣的一個xml文件 放在Tomcat的confcatalinalocalhost目錄下 例子如下
注意 刪除一個Web應用同時也要刪除webapps下相應的文件夾禍server xml中相應的Context 還要將Tomcat的conf
catalinalocalhost目錄下相應的xml文件刪除 否則Tomcat仍會岸配置去載入……
tomcat部署web應用主要有以下幾種方式
)拷貝你的WAR文件或者你的web應用文件夾(包括該web的所有內容)到$CATALINA_BASE/webapps目錄下
)為你的web服務建立一個只包括context內容的XML片斷文件 並把該文件放到$CATALINA_BASE/webapps目錄下 這個web應用本身可以存儲在硬碟上的任何地方 這種context片斷提供了一種便利的方法來部署web應用 你不需要編輯server xml 除非你想改變預設的部署特性 安裝一個新的web應用時不需要重啟動Tomcat
)同方法 只是將context片斷放在CATALINA_BASEconfCatalinalocalhost目錄下 這種方法比方法 >要有效 筆者經過多次實驗發現方法 不如後面這種方法好用 前者多次出現系統打不開的情況
)直接在server xml中</Host>前加上Context片斷 使用這種方法時 tomcat會自動在CATALINA_BASEconfCatalinalocalhost目錄下生成一個文件片斷 方法同方法 具有同樣效果 這種方式需要將ROOT目錄刪除才行
另外 為了讓tomcat只運行conf/server xml中指定的web應用 可以有以下幾種辦法
實現一
)將要部署的WEB應用放在webapps以外的路徑 並在server xml相應的context中的docBase指定
)刪除webapps中的所有文件夾 以及conf/catalina/localhost下所有xml文件
注 webapps是server xml中的Host元素的appBase屬性的值
實現二
)修改server xml中Host元素的屬性 添加或修改 deployXML= false deployOnStartup= false autoDeploy= false
)含義
lishixin/Article/program/Java/ky/201311/28718
⑷ 怎麼在linux下用tomcat部署java web項目
1。安裝tomcat
2。將web項目打成war包
3。將war包放到tomcat指定目錄
當然 每一步可能涉及好多細節,需要你read the fuck manual
當然我的回答可能你不採納,但是我認為其他 人的回答完全是 垃圾
⑸ JavaWeb項目如何部署到tomcat(手工)
你直接跡戚把wabapp考到tomcat的webapp裡面,請問一下這個webapp裡面的WEB-INF下面有classes文件嗎?鬧旦
我想正常拷貝時沒有的。
正確的方法是,在eclipse裡面的項目傷右鍵,然後Export,然後在彈出的框當中選擇導出類型,這里選擇web下面的液州擾WAR file,然後下一步,選擇導出到哪裡,然後把導出的war文件放到tomcat的webapp下面。啟動tomcat就可以了。tomcat會自動把這個war文件解壓為一個工程。
⑹ 如何把java程序部署到tomcat里
1,把java的web工程打成一個war包。
2,把war包上傳到tomcat目錄下的webapps目錄下
3,進入tomcat的bin目錄下,雙擊啟動startup.bat
⑺ 請問java web項目+tomcat服務 的運作流程是怎麼樣的,像怎麼部署到伺服器,tomcat怎麼找到java項目的等
tomcat是一個web容器,java web項目相當與容器中的一個元素 ,當把java web項目部署到伺服器的時候 就相當於在容器裡面加入了一個元素
tomcat啟動的時候 tomcat容器會獲得裡面元素的相關信息 比如web項目的名稱
當用戶請求伺服器的時候 首先根據請求的一級域名找到你啟動的tomcat容器,容器在分析一級域名後面的請求字元竄截取請求的項目名字 ,根據項目名字 把請求信息發給 容器裡面與項目名字對應的web項目 然後web項目處理請求 處理完了 將響應信息 發給容器 容器在返回給用戶
在詳細一點
為什麼請求能夠找到開啟的tomcat伺服器?
首先你請求的地址是本機的ip地址 ,這樣請求能夠發送到本機上 , 那麼怎麼給本機的tomcat能 這關鍵點就是 埠了 請求會根據本機上所有開啟的程序的埠信息 給相應的程序
tomcat的默認埠是8080 所以你的請求地址需要加上:8080 當然你可以更改tomcat的埠比如80 這樣你就不用去在請求地址上加:8080 因為100以內的埠 會自動匹配
⑻ 用java開發web項目,如果用於互聯網,還是用tomcat部署嗎
當然可以使用tomcat部署,但是需要考慮訪問量的問題,如果訪問量不大巧陪,那麼一個tomcat就可以滾肢了,不要小瞧tomcat的孝備蠢負載能力,用過一個tomcat支撐過一個縣級市所有醫院系統的訪問,但是具體的訪問量當時也沒有統計,如果訪問量挺大,或者說峰值比較大,可以考慮tomcat集群,用apache+tomcat的方式做集群難度比較小,畢竟這是免費而且最容易實現的方式了。