Tomcat安裝與使用

主要講解Tomcat的 安裝與使用,講解ubuntu版本和windows。css

下載與安裝:

1)到apache官網。www.apache.org http://jakarta.apache.org(產品的主頁)
2)
安裝版:window (exe、msi) linux(rmp)
壓縮版:window(rar,zip) linux(tar,tar.gz)建議下載壓縮版
3)下載壓縮版,解壓到本地
解壓後的文件夾以下:windows和linux下都是同樣的。
1html

運行和關閉tomcat

windows啓動軟件:

到/bin目錄下找到startup.bat ,雙擊這個文件
彈出命令窗口,顯示以下:表示運行正常
2java

ubuntu下啓動軟件:

到/bin目錄下打開終端,輸入命令:./startup.sh
顯示信息以下:
3mysql

打開瀏覽器,輸出如下地址

http://localhost:8080
顯示以下
4linux

關閉軟件

windows下到/bin目錄下找到/shutdown.bat,雙擊這個文件便可!
ubuntu下在終端輸入(在bin目錄下):./shutdown.shgit

Tomcat常見問題:

閃退問題

   緣由:tomcat軟件是java語言開發的。 tomcat軟件啓動時,會默認到系統的環境變量中查找一個名稱叫JAVA_HOME的變量。這個變量的做用找到tomcat啓動所需的jvm。
windows下:
   解決辦法: 到環境變量中設置JAVA_HOME的變量
   JAVA_HOME= C:\Program Files\Java\jdk1.6.0_30 (注意別配置到bin目錄下)
ubuntu下:
   解決辦法:github

$ 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啓動所需的端口被其餘軟件佔用了!
   解決辦法:
   a)關閉其餘軟件程序,釋放所需端口
   b)修改tomcat軟件所需端口
   c)找到並修改/conf/server.xml文件web

<Connector port="8081" protocol="HTTP/1.1"
              connectionTimeout="20000"
              redirectPort="8443" />

Tomcat的目錄結構:

|-bin: 存放tomcat的命令。
catalina.bat(sh) 命令:
startup.bat(sh)  -> catalina.bat(sh) start
shutdown.bat - > catalina.bat(sh) stop
|- conf: 存放tomcat的配置信息。其中server.xml文件是核心的配置文件。
|-lib:支持tomcat軟件運行的jar包。其中還有技術支持包,如servlet,jsp
|-logs:運行過程的日誌信息
|-temp: 臨時目錄
|-webapps: 共享資源目錄。web應用目錄。(注意不能以單獨的文件進行共享)
|-work: tomcat的運行目錄。jsp運行時產生的臨時文件就存放在這裏

配置文件的修改:

server.xml的修改

端口,和編碼的修改:sql

<Connector port="8080" #這裏修改端口
             protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"  URIEncoding="UTF-8" useBodyEncodingForURI="true" #解決大多數中文編碼問題/>

修改host主機數據庫

<Host name="localhost"#默認的主機名,這裏修改後,還需修改系統的host文件
       appBase="webapps"#默認存放工程的文件夾
            unpackWARs="true" autoDeploy="true">

__修改訪問工程的路徑__不建議修改:
打開server.xml,在 這個主機中增長一個Context便可
便可以完成項目發佈,以後經過?localhost:8080/hello就能夠訪問該目錄
5
Context表示訪問的虛擬路徑,path表示要訪問的網頁下文路徑,docBase表示要訪問的文件夾所在路徑,reloadable表示是否在修改以後進行從新啓動,若是使用eclipse開發建議設置爲false,由於在eclipse中會經過debug進行啓動。

web.xml的修改

主頁的修改

<welcome-file-list>
        <welcome-file>index.html</welcome-file>#通常建立web項目時默認的主頁是index.html index.jsp
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>#;你能夠修改爲你的將你的主頁放置在工程根目錄就行;
        <welcome-file>hello.jsp</welcome-file>#好比加一個你本身的主頁;
    </welcome-file-list>

是否列出列表
listings表示是否在顯示頁面時打開文件列表,建議在調試時打開,方便查詢一些特殊的網頁文件,好比文件名太長的等;

<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>

修改後例子:
61

web應用和目錄結構:

|- WebRoot :   web應用的根目錄
    |- 靜態資源(html+css+js+image+vedio)
    |- WEB-INF : 固定寫法。
       |-classes: (可選)固定寫法。存放class字節碼文件
       |-lib: (可選)固定寫法。存放jar包文件。
       |-web.xml
注意:
1)WEB-INF目錄裏面的資源不能經過瀏覽器直接訪問
2)若是但願訪問到WEB-INF裏面的資源,就必須把資源配置到一個叫web.xml的文件中。

URL簡介:

URL全名叫統一資源定位符,用於定位互聯網的資源。
     問題: http://localhost:8080/examples/hello.html
      http://     協議。http協議。
       localhost    域名。爲了找到IP地址。
      本地域名: localhost
     外部域名:www.baidu.com
     8080: tomcat默認的端口
     3306:mysql數據庫的端口
    1521: orace數據庫的端口。
   /examples:   web應用的名稱。默認狀況下,在webapps目錄下找
    /hello.html : 資源名稱。

手動開發動態資源(web)

最簡單的例子:

在Tomcat文件下的webapps/examples 文件下創建一個html的文件,好比我創建了hello.html:

I am peace
this is test

運行Tomcat,在瀏覽器裏面輸入http://localhost:8080/examples/hello.html.顯示以下:
6

手動servlet的例子:

Servlet : 用java語言來編寫動態資源的開發技術。
Servlet類只能交給tomcat服務器運行!(開發者本身不能運行)
Servlet手動編寫步驟:

  1. 導入servlet的jar包:在Tomcat目錄的lib文件下:
    7
  2. 編寫一個類,繼承HttpServlet並覆蓋doGet的方法:以下:
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 {
    //解決中文亂碼問題
     resp.setContentType("text/html;charset=utf-8");
     //向瀏覽器輸出時間
     resp.getWriter().write("這是第一個servlet程序。當前時間爲:"+new Date());
    }
}
  1. 在工程目錄下找到build文件,將對應類class的字節碼(包括包文件)拷貝到:apache-tomcat-8.0.26/webapps/examples/WEB-INF/classes下
    8
  2. 修改/examples/WEB-INF/web.xml的文件:
    增長以下內容:
<!-- 配置一個servlet程序 -->
    <servlet>
        <!-- servlet的內部名稱 ,能夠自定義-->
        <servlet-name>HelloServlet</servlet-name>
        <!-- servlet類名: 包名+簡單類名-->
        <servlet-class>com.rlovep.servlet.Hander</servlet-class>
    </servlet>
    <servlet-mapping>
        <!-- servlet的內部名稱,和上面的名稱保持一致!!!-->
        <servlet-name>HelloServlet</servlet-name>
        <!-- servlet的訪問名稱: /名稱 -->
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
  1. 在瀏覽器中輸入:http://localhost:8080/examples/hello.顯示以下:
    9
    創建成功

    工具開發動態資源

  2. 建立web project (javaweb工程)ubuntu下是創建Dynamic web project
    2.在WebRoot下創建靜態資源文件:index.html
    3.在src下創建動態資源文件
    3.1 new -> Servlet( servlet的代碼生成器)
    3.2 寫pacakge -> class名 -> 修改mapping url
    10
  3. 啓動tomcat服務器

  4. 訪問servlet
    主頁:http://localhost:8080/HttpProtocl
    11
    servlet:http://localhost:8080/HttpProtocl/Auto
    12

    程序下載地址

    點擊這裏

來自一條小鯊魚(rlovep.com)

相關文章
相關標籤/搜索