<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    內(nèi)蒙古java團隊

    j2se,j2ee開發(fā)組
    posts - 139, comments - 212, trackbacks - 0, articles - 65
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    ??????????本文詳細(xì)介紹TOMCAT服務(wù)器上的應(yīng)用,介紹如何在Tomcat上創(chuàng)建和發(fā)布Web應(yīng)用。這里首先講解Tomcat的目錄結(jié)構(gòu)以及Web應(yīng)用的目錄結(jié)構(gòu),接著介紹如何將HTML、Servlet、JSP和Tag Library部署到Web應(yīng)用中,然后介紹把整個Web應(yīng)用打包并發(fā)布的方法,最后介紹如何在Tomcat上配置虛擬主機。

    本章側(cè)重于討論Web應(yīng)用的結(jié)構(gòu)和發(fā)布方法,所以沒有對本章的Servlet和JSP的例子進(jìn)行詳細(xì)解釋,關(guān)于Servlet和JSP的技術(shù)可以分別參考其它章節(jié)的內(nèi)容。

    2.1 Tomcat的目錄結(jié)構(gòu)

    在Tomcat上發(fā)布Web應(yīng)用之前,首先要了解Tomcat的目錄結(jié)構(gòu)。Tomcat的目錄結(jié)構(gòu)參見表2-1,這些目錄都是的子目錄。

    表2-1 Tomcat的目錄結(jié)構(gòu)

    目 錄 描 述
    /bin 存放在Windows平臺 以及Linux平臺上啟動 和關(guān)閉Tomcat的腳本文件
    /conf 存放Tomcat服務(wù)器的各種配置文件, 其中最重要的配置文件是server.xml
    /server 包含3個子目錄: classes、lib和webapps
    /server/lib 存放Tomcat服務(wù)器所需的各種JAR文件
    /server/webapps 存放Tomcat自帶的兩個Web應(yīng)用: admin應(yīng)用和manager應(yīng)用
    /common/lib 存放Tomcat服務(wù)器以及所有 Web應(yīng)用都可以訪問的JAR文件
    /shared/lib 存放所有Web應(yīng)用都可以訪問的JAR文件
    /logs 存放Tomcat的日志文件
    /webapps 當(dāng)發(fā)布Web應(yīng)用時, 默認(rèn)情況下把Web應(yīng)用 文件放于此目錄下
    /work Tomcat把由JSP生成的 Servlet放于此目錄下


    從表2-1可以看出,在/server/lib目錄、/common/lib和/shared/lib目錄下都可以放JAR文件,它們的區(qū)別在于:

    在/server/lib目錄下的JAR文件只可被Tomcat服務(wù)器訪問

    在/shared/lib目錄下的JAR文件可以被所有的Web應(yīng)用訪問,但不能被Tomcat服務(wù)器訪問

    在/common/lib目錄下的JAR文件可以被Tomcat服務(wù)器和所有Web應(yīng)用訪問

    此外,對于下面將要介紹的Java Web應(yīng)用,在它的WEB-INF目錄下,也可以建立lib子目錄,在lib子目錄下可以放各種JAR文件,這些JAR文件只能被當(dāng)前Web應(yīng)用訪問。

    在以上提到的lib目錄下都只接受JAR文件,如果類壓縮文件為ZIP文件,應(yīng)該將它展開,重新打包為JAR文件再拷貝到lib目錄中。如果直接將ZIP文件拷貝到lib目錄,則會發(fā)現(xiàn)Tomcat服務(wù)器仍然找不到相關(guān)的類。打包命令參見2.2.8節(jié)。

    2.2 創(chuàng)建和發(fā)布Web應(yīng)用

    Java Web應(yīng)用由一組靜態(tài)HTML頁、Servlet、JSP和其他相關(guān)的class組成。每種組件在Web應(yīng)用中都有固定的存放目錄。Web應(yīng)用的配置信息存放在web.xml文件中。在發(fā)布某些組件(如Servlet)時,必須在web.xml文件中添加相應(yīng)的配置信息。

    2.2.1 Web應(yīng)用的目錄結(jié)構(gòu)

    Web應(yīng)用具有固定的目錄結(jié)構(gòu),這里假定開發(fā)一個名為helloapp的Web應(yīng)用。首先,應(yīng)該在/webapps目錄下創(chuàng)建這個Web應(yīng)用的目錄結(jié)構(gòu),參見表2-2。

    表2-2 Web應(yīng)用的目錄結(jié)構(gòu)

    目 錄描 述
    /helloappWeb應(yīng)用的根目錄, 所有的JSP和HTML文件 都存放于此目錄下
    /helloapp/WEB-INF存放Web應(yīng)用的發(fā)布描述文件web.xml
    /helloapp/WEB-INF/classes存放各種class文件, Servlet類文件也放于此目錄下
    /helloapp/WEB-INF/lib存放Web應(yīng)用所需的各種JAR文件


    例如,在這個目錄下,可以存放JDBC驅(qū)動程序的JAR文件

    從表2-2中,我們看到在classes以及l(fā)ib子目錄下,都可以存放Java類文件。在運行過程中,Tomcat的類裝載器先裝載classes目錄下的類,再裝載lib目錄下的類。因此,如果兩個目錄下存在同名的類,classes目錄下的類具有優(yōu)先權(quán)。

    本章介紹的helloapp應(yīng)用的目錄結(jié)構(gòu)如圖2-1所示,helloapp應(yīng)用在Windows資源管理器中的展開如圖2-2所示。

    在helloapp應(yīng)用中創(chuàng)建了如下組件:

    HTML組件:index.htm

    JSP組件:login.jsp和hello.jsp

    Servlet組件:DispatcherServlet

    這些組件之間的鏈接關(guān)系為:

    index.htm→login.jsp→DispatcherServlet→hello.jsp



    2.2.2 web.xml文件

    Java Web應(yīng)用通過一個基于XML的發(fā)布描述符文件來配置其發(fā)布信息,這個文件名為web.xml,它存放于WEB-INF子目錄下。在附錄B中將詳細(xì)介紹web.xml的配置方法,在附錄C中將介紹XML的基本知識。在web.xml文件中可包含如下配置信息:

    Servlet的定義

    Servlet的初始化參數(shù)

    Servlet以及JSP的映射

    安全域配置參數(shù)

    welcome文件清單

    資源引用

    環(huán)境變量的定義

    現(xiàn)在,創(chuàng)建一個默認(rèn)的web.xml文件,并把這個文件放到WEB-INF目錄中。

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3 //EN' 'http://java.sun.com/ j2ee/dtds/web-app_2_3.dtd'>
    <web-app></web-app>


    以上web.xml文件的第一行指定了XML的版本和字符編碼,第二行DOCTYPE指定文檔類型,接下來聲明了一個元素,所有關(guān)于Web應(yīng)用的配置元素都將加入到這個元素中。

    2.2.3 在server.xml中加入元素

    元素是/conf/server.xml中使用最頻繁的元素,它代表了運行在上的單個Web應(yīng)用。一個中可以有多個元素。每個Web應(yīng)用必須有惟一的URL路徑,這個URL路徑在元素的path屬性中設(shè)定。例如,在名為"localhost"的元素中加入如下元素:

    <!-- Define the default virtual host -->
    <Host name="localhost" debug="0" appBase="webapps"unpackWARs="true" autoDeploy="true">
    …………
    <Context path="/helloapp"docBase="helloapp" debug="0"reloadable="true"/>
    </Host>


    Context元素的各個屬性的說明參見表2-3。

    表2-3 Context元素的屬性

    屬 性描 述
    path指定訪問該Web應(yīng)用的URL入口
    docBase指定Web應(yīng)用的文件路徑,可以給定絕對路徑,也可以給定相對于Host的appBase屬性的相對路徑(關(guān)于Host的appBase屬性參見2.3節(jié))。如果Web應(yīng)用采用開放目錄結(jié)構(gòu),則指定Web應(yīng)用的根目錄;如果Web應(yīng)用是個WAR文件,則指定WAR文件的路徑
    reloadable如果這個屬性設(shè)為true, Tomcat服務(wù)器在運行狀態(tài)下會監(jiān)視在WEB-INF/classes 和WEB-INF/lib目錄下class文件的改動。如果監(jiān)測到有class文件被更新,服務(wù)器會自動重新加載Web應(yīng)用


    在開發(fā)階段,將reloadable屬性設(shè)為true,有助于調(diào)試Servlet和其他的class文件。但是由于這一功能會加重服務(wù)器的運行負(fù)荷,因此建議在Web應(yīng)用的產(chǎn)品發(fā)布階段,將這個屬性設(shè)為false。
    主站蜘蛛池模板: 亚洲kkk4444在线观看| 亚洲综合一区二区精品久久| 亚洲一线产品二线产品| 日韩免费一区二区三区在线播放| 一区二区三区亚洲| 222www在线观看免费| 亚洲伊人久久大香线蕉在观| 久久久高清免费视频| 亚洲性无码一区二区三区| 免费看大黄高清网站视频在线| 狠狠色伊人亚洲综合网站色| 午夜私人影院免费体验区| 在线精品自拍亚洲第一区| 波多野结衣免费视频观看| 男女拍拍拍免费视频网站| 国产精品亚洲а∨无码播放| 亚洲免费观看视频| 亚洲成人福利网站| 免费看片免费播放| 一级做a爰片久久毛片免费看| 亚洲码国产精品高潮在线| 一级做a爰全过程免费视频| 亚洲日韩乱码中文无码蜜桃| 日本特黄特黄刺激大片免费| 免费高清A级毛片在线播放| 亚洲精品无码Av人在线观看国产 | 日本免费在线观看| 亚洲熟妇av一区二区三区下载| 免费一本色道久久一区| 免费人成再在线观看网站| 亚洲AV永久无码精品成人| 一二三四影视在线看片免费 | vvvv99日韩精品亚洲| 日韩精品无码免费专区网站| 亚洲国产成人久久综合一区| 免费国产成人午夜电影| 久久精品免费大片国产大片| 亚洲欧洲另类春色校园小说| 啊v在线免费观看| 99热在线免费观看| 国产精品久久亚洲一区二区|