主要講解Tomcat的 安裝與使用,講解Ubuntu版本和windows。
1)到apache官網(wǎng)。www.apache.org http://jakarta.apache.org(產(chǎn)品的主頁(yè))
2)
安裝版:window (exe、msi) linux(rmp)
壓縮版:window(rar,zip) linux(tar,tar.gz)建議下載壓縮版
3)下載壓縮版,解壓到本地
解壓后的文件夾如下:windows和linux下都是一樣的。
到/bin目錄下找到startup.bat ,雙擊這個(gè)文件
彈出命令窗口,顯示如下:表示運(yùn)行正常
到/bin目錄下打開(kāi)終端,輸入命令:./startup.sh
顯示信息如下:
http://localhost:8080
顯示如下
windows下到/bin目錄下找到/shutdown.bat,雙擊這個(gè)文件即可!
ubuntu下在終端輸入(在bin目錄下):./shutdown.sh
? ?原因:tomcat軟件是java語(yǔ)言開(kāi)發(fā)的。 tomcat軟件啟動(dòng)時(shí),會(huì)默認(rèn)到系統(tǒng)的環(huán)境變量中查找一個(gè)名稱(chēng)叫JAVA_HOME的變量。這個(gè)變量的作用找到tomcat啟動(dòng)所需的jvm。
windows下:
? ?解決辦法: 到環(huán)境變量中設(shè)置JAVA_HOME的變量
? ?JAVA_HOME= C:/PRogram Files/Java/jdk1.6.0_30 (注意別配置到bin目錄下)
ubuntu下:
? ?解決辦法:
$ sudo gedit /etc/environment #在environment中修改PATH,追加JDK路徑,添加CLASSPATH與JAVA_HOME后如下:export JAVA_HOME=/usr/lib/jvm/jdk8 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib PATH="/usr/lib/jvm/jdk8/bin:/usr/local/sbin:/usr/local/bin: /usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
? ?原因: tomcat啟動(dòng)所需的端口被其他軟件占用了!
? ?解決辦法:
? ?a)關(guān)閉其他軟件程序,釋放所需端口
? ?b)修改tomcat軟件所需端口
? ?c)找到并修改/conf/server.xml文件
<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
|-bin: 存放tomcat的命令。catalina.bat(sh) 命令:startup.bat(sh) -> catalina.bat(sh) startshutdown.bat - > catalina.bat(sh) stop|- conf: 存放tomcat的配置信息。其中server.xml文件是核心的配置文件。|-lib:支持tomcat軟件運(yùn)行的jar包。其中還有技術(shù)支持包,如servlet,jsp|-logs:運(yùn)行過(guò)程的日志信息|-temp: 臨時(shí)目錄|-webapps: 共享資源目錄。web應(yīng)用目錄。(注意不能以單獨(dú)的文件進(jìn)行共享)|-work: tomcat的運(yùn)行目錄。jsp運(yùn)行時(shí)產(chǎn)生的臨時(shí)文件就存放在這里
端口,和編碼的修改:
<Connector port="8080" #這里修改端口 protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true" #解決大多數(shù)中文編碼問(wèn)題/>
修改host主機(jī)
<Host name="localhost"#默認(rèn)的主機(jī)名,這里修改后,還需修改系統(tǒng)的host文件 appBase="webapps"#默認(rèn)存放工程的文件夾 unpackWARs="true" autoDeploy="true">
__修改訪問(wèn)工程的路徑__不建議修改:
打開(kāi)server.xml,在
Context表示訪問(wèn)的虛擬路徑,path表示要訪問(wèn)的網(wǎng)頁(yè)下文路徑,docBase表示要訪問(wèn)的文件夾所在路徑,reloadable表示是否在修改之后進(jìn)行重新啟動(dòng),如果使用eclipse開(kāi)發(fā)建議設(shè)置為false,因?yàn)樵趀clipse中會(huì)通過(guò)debug進(jìn)行啟動(dòng)。
主頁(yè)的修改
<welcome-file-list> <welcome-file>index.html</welcome-file>#一般創(chuàng)建web項(xiàng)目時(shí)默認(rèn)的主頁(yè)是index.html index.jsp <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file>#;你可以修改成你的將你的主頁(yè)放置在工程根目錄就行; <welcome-file>hello.jsp</welcome-file>#比如加一個(gè)你自己的主頁(yè); </welcome-file-list>
是否列出列表
listings表示是否在顯示頁(yè)面時(shí)打開(kāi)文件列表,建議在調(diào)試時(shí)打開(kāi),方便查詢(xún)一些特殊的網(wǎng)頁(yè)文件,比如文件名太長(zhǎng)的等;
<servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>true</param-value>#將此去改為true </init-param> <load-on-startup>1</load-on-startup> </servlet>
修改后例子:
|- WebRoot : web應(yīng)用的根目錄 |- 靜態(tài)資源(html+CSS+js+image+vedio) |- WEB-INF : 固定寫(xiě)法。 |-classes: (可選)固定寫(xiě)法。存放class字節(jié)碼文件 |-lib: (可選)固定寫(xiě)法。存放jar包文件。 |-web.xml注意:1)WEB-INF目錄里面的資源不能通過(guò)瀏覽器直接訪問(wèn)2)如果希望訪問(wèn)到WEB-INF里面的資源,就必須把資源配置到一個(gè)叫web.xml的文件中。
URL全名叫統(tǒng)一資源定位符,用于定位互聯(lián)網(wǎng)的資源。 問(wèn)題: http://localhost:8080/examples/hello.html http:// 協(xié)議。http協(xié)議。 localhost 域名。為了找到IP地址。 本地域名: localhost 外部域名:www.baidu.com 8080: tomcat默認(rèn)的端口 3306:MySQL數(shù)據(jù)庫(kù)的端口 1521: orace數(shù)據(jù)庫(kù)的端口。 /examples: web應(yīng)用的名稱(chēng)。默認(rèn)情況下,在webapps目錄下找 /hello.html : 資源名稱(chēng)。
在Tomcat文件下的webapps/examples 文件下建立一個(gè)html的文件,比如我建立了hello.html:
I am peacethis is test
運(yùn)行Tomcat,在瀏覽器里面輸入http://localhost:8080/examples/hello.html.顯示如下:
Servlet : 用java語(yǔ)言來(lái)編寫(xiě)動(dòng)態(tài)資源的開(kāi)發(fā)技術(shù)。
Servlet類(lèi)只能交給tomcat服務(wù)器運(yùn)行!(開(kāi)發(fā)者自己不能運(yùn)行)
Servlet手動(dòng)編寫(xiě)步驟:
package com.rlovep.servlet;import java.io.IOException;import java.util.Date;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class Hander extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //解決中文亂碼問(wèn)題 resp.setContentType("text/html;charset=utf-8"); //向?yàn)g覽器輸出時(shí)間 resp.getWriter().write("這是第一個(gè)servlet程序。當(dāng)前時(shí)間為:"+new Date()); }}
修改/examples/WEB-INF/web.xml的文件:
增加如下內(nèi)容:
<!-- 配置一個(gè)servlet程序 --><servlet> <!-- servlet的內(nèi)部名稱(chēng) ,可以自定義--> <servlet-name>HelloServlet</servlet-name> <!-- servlet類(lèi)名: 包名+簡(jiǎn)單類(lèi)名--> <servlet-class>com.rlovep.servlet.Hander</servlet-class></servlet><servlet-mapping> <!-- servlet的內(nèi)部名稱(chēng),和上面的名稱(chēng)保持一致!!!--> <servlet-name>HelloServlet</servlet-name> <!-- servlet的訪問(wèn)名稱(chēng): /名稱(chēng) --> <url-pattern>/hello</url-pattern></servlet-mapping>
在瀏覽器中輸入:http://localhost:8080/examples/hello.顯示如下:
建立成功
啟動(dòng)tomcat服務(wù)器
訪問(wèn)servlet
主頁(yè):http://localhost:8080/HttpProtocl
servlet:http://localhost:8080/HttpProtocl/Auto
點(diǎn)擊這里
來(lái)自一條小鯊魚(yú)(rlovep.com)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注