1. 程式人生 > >tomcat使用及常見問題

tomcat使用及常見問題

1)到apache官網。www.apache.org     http://jakarta.apache.org(產品的主頁)

2

安裝版:window exemsilinuxrmp

壓縮版:windowrarziplinuxtartar.gz)學習時候使用

3)執行和關閉tomcat

3.1 啟動軟體

a)找到%tomcat%/bin/startup.bat ,雙擊這個檔案

b)彈出視窗,顯示資訊(不要關閉次視窗)

c)開啟瀏覽器,輸出以下地址

http://localhost:8080

d)看到一隻貓畫面,證明軟體啟動成功!

3.3 關閉軟體

a)找到%tomcat%/bin/shutdown.bat

,雙擊這個檔案即可!

c)開啟瀏覽器,輸出以下地址。看到“無法連線”(最好先清空瀏覽器快取)

4.2 tomcat軟體使用的常見問題

1)閃退問題

原因:tomcat軟體是java語言開發的。 tomcat軟體啟動時,會預設到系統的環境變數中查詢一個名稱叫JAVA_HOME的變數。這個變數的作用找到tomcat啟動所需的jvm

解決辦法; 到環境變數中設定JAVA_HOME的變數

JAVA_HOME= C:\Program Files\Java\jdk1.6.0_30  (注意別配置到bin目錄下)

2)端口占用的錯誤

原因: tomcat啟動所需的埠被其他軟體佔用了!

解決辦法:

a)關閉其他軟體程式,釋放所需埠

b)修改tomcat軟體所需埠

       找到並修改%tomcat%/conf/server.xml檔案

  <Connector port="8081" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

3CATALINA環境變數問題

原因: tomcat軟體啟動後,除了查詢JAVA_HOME後,還會再查詢一個叫CATALINA_HOME變數,這個變數的作用是設定tomcat的根目錄。

解決辦法:建議不要設定CATALINA_HOME變數。檢查如果有的話,清除掉!!!

4.3 體驗tomcat軟體作用

webapps目錄: tomcat共享目錄。需要共享的本地資源放到此目錄中。

4.4 URL

URL全名叫統一資源定位符,用於定位網際網路的資源。

問題: http://localhost:8081/myweb/test.html  看到檔案?

http://     協議。http協議。

localhost    域名。為了找到IP地址。

本地域名: localhost

外部域名:www.baidu.com

8081       埠。軟體監聽的

8080tomcat預設的埠

3306mysql資料庫的埠

1521orace資料庫的埠。

/myweb:   web應用的名稱。預設情況下,在webapps目錄下找

/test.html   資源名稱。

5 Tomcat的目錄結構

|-bin: 存放tomcat的命令。

catalina.bat 命令:

startup.bat  -> catalina.bat start

shutdown.bat - > catalina.bat stop

    |- conf: 存放tomcat的配置資訊。其中server.xml檔案是核心的配置檔案。

|-lib:支援tomcat軟體執行的jar包。其中還有技術支援包,如servletjsp

|-logs:執行過程的日誌資訊

|-temp: 臨時目錄

|-webapps 共享資源目錄。web應用目錄。(注意不能以單獨的檔案進行共享)

|-worktomcat的執行目錄。jsp執行時產生的臨時檔案就存放在這裡

6 Web應用的目錄結構

|- WebRoot :   web應用的根目錄

|- 靜態資源(html+css+js+image+vedio
|- WEB-INF  固定寫法。

|-classes: (可選)固定寫法。存放class位元組碼檔案

|-lib: (可選)固定寫法。存放jar包檔案。

|-web.xml    

注意:

1WEB-INF目錄裡面的資源不能通過瀏覽器直接訪問

2)如果希望訪問到WEB-INF裡面的資源,就必須把資源配置到一個叫web.xml的檔案中。

練習:

1)在webapps下建立一個mybbs目錄

2)建立兩個檔案

2.1 index.html  裡面隨便寫內容 ,有超連結-連線到test.html

2.2 test.html   裡面隨便寫

3)通過瀏覽器訪問到。

7 手動開發動態資源

7.1 靜態資源和動態資源的區別

靜態資源: 當用戶多次訪問這個資源,資源的原始碼永遠不會改變的資源。

動態資源:當用戶多次訪問這個資源,資源的原始碼可能會發送改變。

7.2 動態資源的開發技術

Servlet : java語言來編寫動態資源的開發技術。

Servlet特點:

1)普通的java類,繼承HttpServlet類,覆蓋doGet方法

2Servlet類只能交給tomcat伺服器執行!!!!(開發者自己不能執行!!!)

Servlet手動編寫步驟:

1)編寫一個servlet程式,繼承HttpServlet

/**

 * 第一個servlet程式

 * @author APPle

 *

 */

public class HelloServlet extends HttpServlet{

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

//解決中文亂碼問題

resp.setContentType("text/html;charset=utf-8");

//向瀏覽器輸出內容

resp.getWriter().write("這是第一個servlet程式。當前時間為:"+new Date());

}

}

2)找到HelloServlet類的class位元組碼,然後把拷貝到tomcat的一個web應用中WEB-INF/classes目錄下。

3)在當前web應用下的web.xml檔案配置Servlet

<!-- 配置一個servlet程式 -->

<servlet>

<!-- servlet的內部名稱 ,可以自定義-->

<servlet-name>HelloServlet</servlet-name>

<!-- servlet類名: 包名+簡單類名-->

<servlet-class>gz.itcast.d_servlet.HelloServlet</servlet-class>

</servlet>

<servlet-mapping>

<!-- servlet的內部名稱,和上面的名稱保持一致!!!-->

<servlet-name>HelloServlet</servlet-name>

<!-- servlet的訪問名稱: /名稱 -->

<url-pattern>/hello</url-pattern>

</servlet-mapping>

4)啟動tomcat伺服器,執行訪問

訪問servlet:  http://localhost:8080/myweb/ hello

8 工具開發動態資源

1)建立web project javaweb工程)

2)在WebRoot下建立靜態資原始檔,

3)在src下建立動態資原始檔

  3.1 new -> Servlet( servlet的程式碼生成器)

  3.2 pacakge  -> class-> 修改mapping  url

4)關聯tomcat伺服器

4.1 window-> Preferences - > MyEcplise -> servers -> Tomcat 6.x (注意一定要enable)

5)部署web project應用。(拷貝web應用到tomcatwebapps目錄下)

6)啟動tomcat伺服器

7)訪問servlet

http://localhost:8081/day08_web/hello