Java Web應(yīng)用開(kāi)發(fā)技術(shù) 教學(xué)課件 任文娟Java Web應(yīng)用概述_第1頁(yè)
Java Web應(yīng)用開(kāi)發(fā)技術(shù) 教學(xué)課件 任文娟Java Web應(yīng)用概述_第2頁(yè)
Java Web應(yīng)用開(kāi)發(fā)技術(shù) 教學(xué)課件 任文娟Java Web應(yīng)用概述_第3頁(yè)
Java Web應(yīng)用開(kāi)發(fā)技術(shù) 教學(xué)課件 任文娟Java Web應(yīng)用概述_第4頁(yè)
Java Web應(yīng)用開(kāi)發(fā)技術(shù) 教學(xué)課件 任文娟Java Web應(yīng)用概述_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、在線教務(wù)輔導(dǎo)網(wǎng): :/教材其余課件及動(dòng)畫(huà)素材請(qǐng)查閱在線教務(wù)輔導(dǎo)網(wǎng)QQ:349134187 或者直接輸入下面地址:1第1章 Java Web應(yīng)用概述本章導(dǎo)航本章主要是對(duì)Java Web編程根底知識(shí)的介紹,通過(guò)本章的學(xué)習(xí),將幫您解決如下幾個(gè)主要問(wèn)題: 什么是Web應(yīng)用? Web應(yīng)用的工作原理是怎樣的? Java Web應(yīng)用程序由哪些組件組成? Java Web應(yīng)用程序的開(kāi)發(fā)環(huán)境怎樣搭建? 如何在搭建好的開(kāi)發(fā)環(huán)境下創(chuàng)立、部署、發(fā)布一個(gè)Web應(yīng)用程序?3學(xué)習(xí)目標(biāo)通過(guò)本章的學(xué)習(xí),將會(huì)為后續(xù)章節(jié)Java Web應(yīng)用開(kāi)發(fā)技術(shù)的學(xué)習(xí)打下根底。學(xué)完本章應(yīng)重點(diǎn)到達(dá)如下學(xué)習(xí)目標(biāo): 理解Web應(yīng)用的工作原理; 了解J

2、ava Web開(kāi)發(fā)模式; 學(xué)會(huì)Java Web開(kāi)發(fā)環(huán)境的搭建; 掌握創(chuàng)立、部署、發(fā)布一個(gè)Java Web應(yīng)用程序的過(guò)程。 4主要內(nèi)容Web應(yīng)用程序簡(jiǎn)介1Java Web編程簡(jiǎn)介2Java Web開(kāi)發(fā)環(huán)境的搭建3使用MyEclipse進(jìn)行Web開(kāi)發(fā)451.1 Web應(yīng)用程序簡(jiǎn)介1.1.1 C/S和B/S開(kāi)發(fā)模式 圖1-1 C/S模式體系結(jié)構(gòu) 61.1 Web應(yīng)用程序簡(jiǎn)介C/S模式特點(diǎn):采用這種模式編寫(xiě)的軟件分為客戶(hù)端和效勞器端兩局部,需要分別在客戶(hù)機(jī)和效勞器上進(jìn)行安裝。這種模式在用戶(hù)數(shù)據(jù)錄入方面很有優(yōu)勢(shì),也降低了系統(tǒng)的通信開(kāi)銷(xiāo),但是也有一定的缺乏之處。例如,當(dāng)客戶(hù)端軟件需要升級(jí)的時(shí)候,所有的客戶(hù)

3、端軟件都必須進(jìn)行升級(jí)安裝或者重新安裝,這就給軟件的使用者或系統(tǒng)管理員帶來(lái)很大的不便。同時(shí),由于不同的客戶(hù)可能使用不同版本的客戶(hù)端,在設(shè)計(jì)和升級(jí)效勞器端軟件的時(shí)候不得不考慮軟件版本的兼容性,這對(duì)程序員來(lái)說(shuō)是件很痛苦的事。 71.1 Web應(yīng)用程序簡(jiǎn)介圖1-2 B/S模式體系結(jié)構(gòu)81.1 Web應(yīng)用程序簡(jiǎn)介B/S模式特點(diǎn):這種模式可以說(shuō)是C/S的變體或者說(shuō)是改進(jìn),這種模式圍繞著Web效勞器來(lái)進(jìn)行,Web效勞器是安裝了Web效勞軟件的計(jì)算機(jī),它能接受客戶(hù)端發(fā)出的HTTP Web請(qǐng)求。如在瀏覽器地址欄中輸入 :/即會(huì)向Web效勞器發(fā)出請(qǐng)求,Web效勞器處理請(qǐng)求后,產(chǎn)生HTML腳本發(fā)回客戶(hù)端,而客戶(hù)端就

4、不需要像C/S那樣專(zhuān)門(mén)編寫(xiě)一個(gè)程序,而是變?yōu)镮E瀏覽器。接收效勞器返回的HTML,然后將該HTML顯示出來(lái),提供人機(jī)交互界面。 B/S開(kāi)發(fā)中的重點(diǎn)就是編寫(xiě)Web程序,目前大局部流行的Web程序,都采用HTML加效勞器端嵌入式腳本的方式組織。 91.1 Web應(yīng)用程序簡(jiǎn)介 B/S模式的優(yōu)點(diǎn)在于: 客戶(hù)端基于統(tǒng)一的Web瀏覽器,減少了投資,解決了系統(tǒng)維護(hù)升級(jí)的問(wèn)題; 靈活性和可擴(kuò)展性:系統(tǒng)可根據(jù)規(guī)模的不斷擴(kuò)大,在不影響用戶(hù)日常工作的前提下,對(duì)Web效勞器和數(shù)據(jù)庫(kù)效勞器等設(shè)備進(jìn)行擴(kuò)展; 簡(jiǎn)易性:操作直觀、簡(jiǎn)單,培訓(xùn)方便,對(duì)使用人員的計(jì)算機(jī)操作水平要求不高; 實(shí)施本錢(qián)低:充分利用現(xiàn)有的辦公網(wǎng)絡(luò),防止了

5、網(wǎng)絡(luò)重復(fù)建設(shè)。 目前流行著多種B/S開(kāi)發(fā)語(yǔ)言,如ASP,PHP,JSP等。本書(shū)將重點(diǎn)介紹JSP。 101.1 Web應(yīng)用程序簡(jiǎn)介Web應(yīng)用程序就是一種通過(guò)互聯(lián)網(wǎng)能夠讓W(xué)eb瀏覽器和效勞器通訊的計(jì)算機(jī)程序。不同于靜態(tài)網(wǎng)站,Web應(yīng)用程序動(dòng)態(tài)創(chuàng)立頁(yè)面。采用動(dòng)態(tài)方式生成的Web站點(diǎn)通過(guò)使用計(jì)算機(jī)程序來(lái)實(shí)現(xiàn)動(dòng)態(tài)的特性。 圖1-3 典型的Web應(yīng)用1.1.2 Web應(yīng)用簡(jiǎn)介11在上面的Web應(yīng)用中,當(dāng)用戶(hù)從瀏覽器的地址欄輸入 :/時(shí),便顯示出百度搜索頁(yè)面,當(dāng)在搜索頁(yè)面中輸入“Java Web應(yīng)用并單擊“百度一下時(shí),就會(huì)顯示搜索到的資源列表。 問(wèn)題:1百度的首頁(yè)和我們要搜索的資源是存放在哪里的呢?2計(jì)算機(jī)

6、又是如何將其顯示在瀏覽器中的呢? 12解答:1百度的首頁(yè)和我們要搜索的資源是存放在百度網(wǎng)的Web效勞器上面。其局部?jī)?nèi)容或全部?jī)?nèi)容是未確定的。只有當(dāng)用戶(hù)請(qǐng)求 Web 效勞器中的某個(gè)頁(yè)面時(shí),才確定該頁(yè)的最終內(nèi)容。因?yàn)轫?yè)面內(nèi)容基于用戶(hù)的操作,隨請(qǐng)求的不同而變化,所以這種頁(yè)面稱(chēng)為動(dòng)態(tài)頁(yè)面,反之那么為靜態(tài)頁(yè)面。2當(dāng)用戶(hù)在地址欄中輸入百度的首頁(yè)地址URL,即“統(tǒng)一資源定位符時(shí),瀏覽器會(huì)向百度網(wǎng)的效勞器發(fā)送HTTP請(qǐng)求,這個(gè)請(qǐng)求使用HTTP協(xié)議,其中包括請(qǐng)求的主機(jī)名、HTTP版本號(hào)等信息。效勞器在收到請(qǐng)求信息后,將根據(jù)用戶(hù)請(qǐng)求定位資源,通過(guò)網(wǎng)絡(luò)發(fā)送到客戶(hù)端的瀏覽器。 13應(yīng)用程序工作原理1.靜態(tài)頁(yè)工作原理靜

7、態(tài)網(wǎng)頁(yè)也稱(chēng)為普通網(wǎng)頁(yè),是相對(duì)于動(dòng)態(tài)網(wǎng)頁(yè)而言的,并不是指網(wǎng)頁(yè)中的元素都是靜止不動(dòng)的,而是指在通過(guò)瀏覽器進(jìn)行瀏覽時(shí),Web效勞器中不再發(fā)生動(dòng)態(tài)改變沒(méi)有表單處理程序或其他應(yīng)用程序的執(zhí)行,因此網(wǎng)頁(yè)不是即時(shí)生成的。瀏覽器“閱讀靜態(tài)網(wǎng)頁(yè)的執(zhí)行過(guò)程較為簡(jiǎn)單,如圖1-4所示。 瀏覽器Web服務(wù)器 靜態(tài)網(wǎng)頁(yè)HTTP請(qǐng)求HTTP響應(yīng)圖1-4 靜態(tài)網(wǎng)頁(yè)工作原理 14工作原理:當(dāng) Web 站點(diǎn)接收到瀏覽器端發(fā)送來(lái)的一個(gè) HTTP 請(qǐng)求后,效勞器檢查在效勞器上是否存在客戶(hù)端所請(qǐng)求的文件,如果該文件存在,那么用 HTTP 響應(yīng)HTTP Response的形式把客戶(hù)端所請(qǐng)求的文件送回給客戶(hù)端的瀏覽器。當(dāng)客戶(hù)端瀏覽器接收到了

8、 HTTP 響應(yīng)后,開(kāi)始解讀HTML標(biāo)簽,然后將其轉(zhuǎn)換,將結(jié)果顯示出來(lái)。 152.動(dòng)態(tài)頁(yè)工作原理動(dòng)態(tài)網(wǎng)頁(yè)是指網(wǎng)頁(yè)中除了靜態(tài)網(wǎng)頁(yè)中的元素外,還包括一些應(yīng)用程序,這些應(yīng)用程序使瀏覽器與Web效勞器之間發(fā)生交互,而且應(yīng)用程序的執(zhí)行有時(shí)需要應(yīng)用程序效勞器支持才能夠完成。16瀏覽器HTTP請(qǐng)求HTTP響應(yīng)Web容器Web服務(wù)器靜態(tài)網(wǎng)頁(yè)動(dòng)態(tài)網(wǎng)頁(yè)圖1-5 動(dòng)態(tài)網(wǎng)頁(yè)工作原理 17工作原理:當(dāng)客戶(hù)端瀏覽器向網(wǎng)絡(luò)中的Web效勞器發(fā)出請(qǐng)求時(shí),瀏覽器會(huì)將用戶(hù)輸入的信息一起發(fā)送到Web效勞器,Web效勞器接收請(qǐng)求信號(hào)后,將該網(wǎng)頁(yè)發(fā)送至應(yīng)用程序效勞器,應(yīng)用程序效勞器檢查該網(wǎng)頁(yè),執(zhí)行其中的應(yīng)用程序,在執(zhí)行應(yīng)用程序的過(guò)程中,

9、可能會(huì)查詢(xún)數(shù)據(jù)庫(kù),查詢(xún)完數(shù)據(jù)庫(kù),應(yīng)用程序效勞器會(huì)將查詢(xún)到的數(shù)據(jù)插入網(wǎng)頁(yè)中,此時(shí)動(dòng)態(tài)網(wǎng)頁(yè)變?yōu)殪o態(tài)網(wǎng)頁(yè),Web效勞器將完成的靜態(tài)網(wǎng)頁(yè)傳給瀏覽器,瀏覽器接到Web效勞器送來(lái)的信號(hào)后開(kāi)始解讀HTML標(biāo)簽并將其轉(zhuǎn)換,有時(shí)還執(zhí)行腳本程序,然后將結(jié)果顯示出來(lái)。 181.1.4 Java Web應(yīng)用程序 采用Java技術(shù)編寫(xiě)的Web應(yīng)用程序我們稱(chēng)為Java Web應(yīng)用,它是由一組 Servlet、HTML頁(yè)面、類(lèi)以及其他可以綁定的資源構(gòu)成,它可以在實(shí)現(xiàn)Servlet標(biāo)準(zhǔn)的Web容器中運(yùn)行。如圖1-6所示:服務(wù)器端瀏覽器HTTP請(qǐng)求HTTP響應(yīng)客戶(hù)端Web服務(wù)器ServletJSP數(shù)據(jù)庫(kù)服務(wù)器Web容器JDBC

10、靜態(tài)資源圖1-6 Java Web應(yīng)用的組成 19Java Web組成說(shuō)明:在效勞器端有一個(gè)Web容器。Web容器實(shí)際上就是一個(gè)效勞程序,這個(gè)程序用于處理從客戶(hù)端發(fā)出的請(qǐng)求。在Java Web應(yīng)用中,Web容器主要是用于給處于容器中的應(yīng)用程序組件Servlet、 JSP提供一個(gè)環(huán)境,使Servlet、JSP直接跟容器中的環(huán)境變量交互,不必關(guān)注其它系統(tǒng)問(wèn)題。即Java Web容器使得一個(gè)Web效勞器可以運(yùn)行 Servlet 和 JSP。如Tomcat就是一個(gè)常用的Web容器,后面我們將學(xué)習(xí) Tomcat的具體安裝和運(yùn)行方法。 20一個(gè)Java Web應(yīng)用的具體執(zhí)行過(guò)程是:1客戶(hù)端向Web效勞器發(fā)

11、起一個(gè)HTTP請(qǐng)求;2HTTP請(qǐng)求被Web效勞器接收,如果請(qǐng)求的是靜態(tài)頁(yè)面,那么由Web效勞器負(fù)責(zé)處理。如果請(qǐng)求的是Java Web組件Servlet或者JSP,那么移交給Web容器;3Web容器根據(jù)Servlet的配置文件確定調(diào)用的具體Servlet類(lèi),并把請(qǐng)求request對(duì)象傳給它;4Servlet通過(guò)request對(duì)象知道客戶(hù)端的使用者是誰(shuí),客戶(hù)的請(qǐng)求信息是什么和其他的一些信息。Servlet處理完請(qǐng)求后把要返回的信息放入響應(yīng)response對(duì)象通過(guò)Web效勞器返回到客戶(hù)端;5一旦Servlet完成了請(qǐng)求的處理,Web容器就會(huì)刷新response,把控制權(quán)返回給web效勞器。 211.

12、2 Java Web編程簡(jiǎn)介 1.2.1 Java Web開(kāi)發(fā)模式 1.Java Web編程技術(shù) Java提供了專(zhuān)門(mén)的Web組件來(lái)進(jìn)行Web開(kāi)發(fā),常用的編程技術(shù)有Servlet和JSP兩種: Servlet Java Servlet實(shí)質(zhì)上是一種小型的、與平臺(tái)無(wú)關(guān)的Java類(lèi),主要用于在效勞器端產(chǎn)生動(dòng)態(tài)內(nèi)容,它由Web效勞器的容器管理并被編譯成平臺(tái)無(wú)關(guān)的字節(jié)代碼,這些代碼可以動(dòng)態(tài)地加載到一個(gè)Web效勞器上,并由該效勞器運(yùn)行。通過(guò)一種由Servlet容器實(shí)現(xiàn)的請(qǐng)求響應(yīng)模型與Web客戶(hù)機(jī)進(jìn)行交互。 221.2.2 Java Web開(kāi)發(fā)模式 Java Server PagesJSPJSP是繼Servl

13、et后Sun公司推出的新技術(shù),它是以Servlet為根底開(kāi)發(fā)的,是對(duì)Servlet簡(jiǎn)化,用于方便輸出動(dòng)態(tài)頁(yè)面。JSP提供的功能大多和Java Servlet類(lèi)似,不過(guò)實(shí)現(xiàn)方式不同,Servlet全部由Java寫(xiě)成并且生成HTML;而JSP通常是大多數(shù)HTML代碼中嵌入少量的Java代碼。23*Servlet和JSP技術(shù)的比較:Servlet是一種在效勞器端運(yùn)行的Java程序,從某種意義上說(shuō),它就是效勞器端的Applet。Servlet被Web效勞器執(zhí)行,同Applet被Web瀏覽器執(zhí)行很類(lèi)似。而JSP是繼Servlet后Sun公司推出的新技術(shù),它是以Servlet為根底開(kāi)發(fā)的,是對(duì)servle

14、t簡(jiǎn)化,用于方便輸出動(dòng)態(tài)頁(yè)面。Servlet與JSP區(qū)別:1編程方式不同JSP是為了解決Servlet中相對(duì)困難的編程技術(shù)而開(kāi)發(fā)的技術(shù),因此,JSP在程序的編寫(xiě)方面比Servlet要容易的多,Servlet嚴(yán)格遵循Java語(yǔ)言的編程標(biāo)準(zhǔn),而JSP那么遵循腳本語(yǔ)言的編制標(biāo)準(zhǔn)。2Servlet必須在編譯以后才能執(zhí)行JSP并不需要另外進(jìn)行編譯,JSP容器會(huì)自動(dòng)完成這一工作,而Servlet在每次修改代碼之后都需要編譯完才能執(zhí)行。243運(yùn)行速度不同由于JSP 容器將JSP程序編譯成Servlet的時(shí)候需要一些時(shí)間,所以JSP的運(yùn)行速度比Servlet要慢一些,不過(guò),如果JSP文件能毫無(wú)變化的重復(fù)使用,

15、它在第一次以后的調(diào)用中運(yùn)行速度就會(huì)和Servlet一樣了,這是因?yàn)镴SP 容器接到請(qǐng)求以后會(huì)確認(rèn)傳遞過(guò)來(lái)的JSP是否有改動(dòng),如果沒(méi)有改動(dòng)的話(huà),將直接調(diào)用JSP編譯過(guò)的Servlet類(lèi),并提供給客戶(hù)端解釋執(zhí)行,如果JSP文件有所改變,JSP 容器將重新將它編譯成Servlet,然后再提交給客戶(hù)端。252.Java Web應(yīng)用的開(kāi)發(fā)模式:JSP+JDBC在B/S開(kāi)發(fā)中最簡(jiǎn)單的一種開(kāi)發(fā)模式是頁(yè)面+邏輯處理,映射到技術(shù)上反映出來(lái)的有JSP+JDBC,在基于這類(lèi)的實(shí)現(xiàn)中,在View層也就是JSP頁(yè)面上負(fù)責(zé)數(shù)據(jù)的顯示、邏輯處理,結(jié)合JDBC完成數(shù)據(jù)的訪問(wèn)。JSP+JavaBean在這個(gè)體系中由JSP頁(yè)面負(fù)

16、責(zé)顯示以及接收頁(yè)面請(qǐng)求,并調(diào)用相應(yīng)的JavaBean來(lái)完成邏輯處理,在獲取其返回的處理數(shù)據(jù)后轉(zhuǎn)到相應(yīng)的頁(yè)面進(jìn)行顯示。在這樣的技術(shù)體系中,由于邏輯是由JavaBean來(lái)完成的,可以對(duì)其進(jìn)行調(diào)試了,代碼的重用性一定程度上也得到了提高。26 MVC開(kāi)發(fā)模式 在Java B/S開(kāi)發(fā)中引入了MVC 思想,MVC 是Model模型、View視圖、Controller控制器的簡(jiǎn)稱(chēng)。MVC強(qiáng)調(diào)View和Model的別離,Controller負(fù)責(zé)接受頁(yè)面請(qǐng)求,并將其請(qǐng)求數(shù)據(jù)進(jìn)行封裝,同時(shí)根據(jù)請(qǐng)求調(diào)用相應(yīng)的Model進(jìn)行邏輯處理,在Model處理后返回結(jié)果數(shù)據(jù)到Controller,Controller將根據(jù)此數(shù)

17、據(jù)調(diào)用相應(yīng)的View,并將此數(shù)據(jù)傳遞給View,由View負(fù)責(zé)將數(shù)據(jù)進(jìn)行融合并最終展現(xiàn)。 按照MVC 思想,最容易想到的實(shí)現(xiàn)方案就是JSP+Servlet+JavaBean,在這里面,JSP對(duì)應(yīng)著View,Servlet對(duì)應(yīng)著Controller,JavaBean對(duì)應(yīng)著Model。作為Controller同時(shí)還需要承擔(dān)根據(jù)請(qǐng)求調(diào)用對(duì)應(yīng)的JavaBean。 由于MVC開(kāi)發(fā)模式有極大的優(yōu)點(diǎn),所以目前的Java Web開(kāi)發(fā)通常都采用MVC 模式進(jìn)行開(kāi)發(fā)。為了簡(jiǎn)化程序的開(kāi)發(fā),出現(xiàn)了一系列的開(kāi)發(fā)框架,如目前比較流行的Struts框架、Spring框架、Hibernate框架等。271.2.2 Web應(yīng)用

18、程序的開(kāi)發(fā)過(guò)程 創(chuàng)立、部署、運(yùn)行一個(gè)Web應(yīng)用程序的過(guò)程如下: 1編寫(xiě)Web組件Servlet、JSP等的源程序。 2編寫(xiě)Web應(yīng)用程序部署描述符。 3編譯Web組件和所需的幫助類(lèi)。 4將應(yīng)用程序打包為一個(gè)可部署的單元可選。 5將應(yīng)用程序部署到一個(gè)Web容器內(nèi)。 6通過(guò)URL訪問(wèn)Web應(yīng)用程序。281.3 Java Web開(kāi)發(fā)環(huán)境的搭建1.3.1 JDK的安裝與配置 略1.3.2 Tomcat的安裝與配置1.安裝可以從 Apache 的主頁(yè)上下載 Tomcat 效勞器。下載網(wǎng)址是 ,對(duì)于Windows操作系統(tǒng),Tomcat提供了兩種安裝文件:一種是exe安裝文件,文件名為 ,該文件是可執(zhí)行的安

19、裝程序,只需要雙擊這個(gè)程序就可以安裝Tomcat了。在安裝的過(guò)程中,安裝程序會(huì)自動(dòng)搜尋JRE和JDK的位置,安裝完成后,會(huì)在Windows系統(tǒng)的“開(kāi)始菜單的“程序菜單中找到相應(yīng)的菜單項(xiàng)。另一種安裝文件為zip文件形式,文件名為,對(duì)于該安裝文件,用戶(hù)只需要將該文件解壓即可。 29Tomcat目錄結(jié)構(gòu)目錄用途/bin存放啟動(dòng)和關(guān)閉Tomcat的腳本文件/conf存放不同的配置文件,server.xml(Tomcat 的配置文件)和 web.xml(應(yīng)用程序的配置文件)/lib存放Tomcat服務(wù)器運(yùn)行所需要的各種JAR文件/webapps發(fā)布web應(yīng)用時(shí),默認(rèn)情況下把web應(yīng)用程序文件夾放于此目錄

20、下/logs存放Tomcat日志文件/temp存放Tomcat運(yùn)行時(shí)產(chǎn)生的臨時(shí)文件/workJSP生成的Servlet放在此目錄下302.啟動(dòng)假設(shè)將解壓到當(dāng)然也可以是其他目錄下,接下來(lái)進(jìn)行Tomcat環(huán)境變量的配置,按照前面設(shè)置環(huán)境變量的方法設(shè)置新的系統(tǒng)環(huán)境“CATALINA_HOME,值為安裝路徑“D:Tomcat 6.0。至此安裝與配置都已完成。在Tomcat的安裝文件夾bin里找到和文件即可啟動(dòng)和關(guān)閉Tomcat。雙擊啟動(dòng)Tomcat,翻開(kāi)瀏覽器輸入: :/localhost:8080 31效勞器配置文件 Tomcat的conf目錄下有兩個(gè)重要的配置文件: Tomcat的配置文件 和應(yīng)用

21、程序的配置文件。是Tomcat的全局配置文件。它提供Tomcat組件的初始配置,并且描述了 Tomcat的結(jié)構(gòu)和含義,使得 Tomcat 能通過(guò)實(shí)例化組件完成啟動(dòng)以及自身構(gòu)建, 文件默認(rèn)在conf目錄下。32 。 33 元素 元素表示的是整個(gè)Catalina Servlet容器,在conf/中是最頂層的配置元素。元素中有三個(gè)重要屬性:className、port、shutdown。className屬性指明實(shí)現(xiàn)接口的類(lèi),默認(rèn)指定className=“ 。port屬性用于指定TCP/IP端口號(hào),通過(guò)該端口號(hào)可以與Tomcat效勞器進(jìn)行通信。該屬性是必須的。shutdown屬性指定終止Tomcat

22、效勞器運(yùn)行時(shí),發(fā)給Tomcat效勞器的shutdown監(jiān)聽(tīng)端口的字符串。該屬性必須設(shè)置。 34 元素 元素包含在元素中,表示存活于一個(gè)頂層的Catalina Servlet容器中的組件。元素由接口定義,它包含一個(gè)元素,以及一個(gè)或多個(gè),這些元素共享用同一個(gè)元素。一個(gè)元素可以配置兩個(gè)屬性:className屬性和name屬性。 className屬性指定實(shí)現(xiàn)接口的類(lèi)。默認(rèn)為。 name屬性用來(lái)標(biāo)識(shí)在元素中唯一的一個(gè)效勞組件。即定義Service的名字。35 元素 元素表示連接器,是容器與外部進(jìn)行交互信息的橋梁。該元素定義的連接器是在一個(gè)元素表示的組件中,一個(gè)元素中可以配置多個(gè)連接器元素,表示提供效

23、勞的組件通過(guò)不同的連接方式與容器外部進(jìn)行通信,從而完成一定的操作。36 元素 元素表示Catalina Servlet容器中針對(duì)元素定義的效勞,執(zhí)行請(qǐng)求處理的一個(gè)引擎。作為這樣一個(gè)引擎,它可能將通過(guò)元素配置的不同連接方式,接收容器外部請(qǐng)求的數(shù)據(jù),經(jīng)過(guò)處理,將處理后的數(shù)據(jù),再通過(guò)連接器傳送給容器外部執(zhí)行請(qǐng)求的載體,例如用戶(hù)。元素由接口定義。37 元素 元素表示對(duì)虛擬主機(jī)進(jìn)行配置,可以在一個(gè)元素中配置多個(gè)元素,也就是指定多個(gè)虛擬主機(jī)。虛擬主機(jī)就是通過(guò)域名這樣的邏輯名,來(lái)定位到物理存在的主機(jī),或者主機(jī)上的目錄。元素由接口定義,如果想自定義主機(jī)實(shí)現(xiàn)類(lèi),可以實(shí)現(xiàn)接口,否那么使用默認(rèn)的標(biāo)準(zhǔn)主機(jī)實(shí)現(xiàn)類(lèi)。元素

24、主要的屬性有:className屬性、name屬性和appBase屬性。38 元素 元素代表了運(yùn)行在虛擬主機(jī)上的單個(gè)Web應(yīng)用,它由Context接口定義,是使用最頻繁的元素。在元素中可以配置一個(gè)或者多個(gè)元素,如果配置多個(gè),必須使得每個(gè)元素對(duì)應(yīng)一個(gè)唯一的path。每個(gè)元素表示一個(gè)Web應(yīng)用程序,可以在該元素中來(lái)對(duì)指定的Web應(yīng)用程序詳細(xì)配置。394.編寫(xiě)并發(fā)布運(yùn)行JSP文件 【例1-1】編寫(xiě)一個(gè)JSP文件,說(shuō)明JSP文件發(fā)布運(yùn)行的一般方法。 1編寫(xiě)一個(gè)簡(jiǎn)單的JSP文件 翻開(kāi)文本編輯器,比方記事本,輸入以下代碼,并保存為注意擴(kuò)展名為.jsp。 JSP測(cè)試頁(yè)面 %( Hello World! );

25、% 402JSP程序的發(fā)布 JSP程序的運(yùn)行需要JSP容器,也就是說(shuō),它需要被部署到Tomcat或其它的JSP容器中發(fā)布,JSP程序的發(fā)布方法有多種,這里介紹常用的兩種方法。 開(kāi)放式目錄結(jié)構(gòu) 在 Tomcat 的目錄/webapps 目錄下建立自己的目錄結(jié)構(gòu),即先在/webapps目錄中創(chuàng)立test目錄,再在test目錄下創(chuàng)立WEB-INF注意要大寫(xiě)目錄,然后在WEB-INF目錄中創(chuàng)立classes目錄和lib目錄及文件可以從Tomcat下拷貝一個(gè)。將 JSP 程序放在自建目錄test下。即把放在D:Tomcat6.0webappstest目錄下,翻開(kāi)瀏覽器,在地址欄中輸入,如果瀏覽器中顯示H

26、ello World!,那么說(shuō)明你已經(jīng)成功運(yùn)行了JSP頁(yè)面! 41 說(shuō)明:上面創(chuàng)立的Web應(yīng)用在Tomcat的默認(rèn)目錄webapps目錄下,也可以放在自己創(chuàng)立的其他目錄下,如可以放在d:myjsp目錄下。如果要放在d:myjsp目錄下,那么需要在文件中進(jìn)行配置,配置方法為在元素中加上如下語(yǔ)句:配置完成后,在瀏覽器地址欄中輸入即可看到瀏覽結(jié)果。42 創(chuàng)立并發(fā)布war文件 應(yīng)用程序也可以打包為war文件進(jìn)行發(fā)布,如果要打包web應(yīng)用程序,可以按照下面步驟進(jìn)行: 1進(jìn)入web應(yīng)用程序的根目錄。 2利用下面的命令將整個(gè)應(yīng)用打包成文件。 jar cvf *.* 3將文件復(fù)制到/webapps目錄下。 要

27、查看war文件的內(nèi)容,可以執(zhí)行下面的命令 jar tf 這個(gè)命令將列出war文件的內(nèi)容,也可以使用WinRAR軟件來(lái)查看文件的內(nèi)容。431.3.3 Eclipse的安裝與配置可以略過(guò)直接安裝myeclispe的下載與安裝首先,可以直接到官方網(wǎng)站 :/上下載Eclipse,單擊導(dǎo)航欄中的Downloads,進(jìn)入Eclipse下載頁(yè)面,在下載列表中找到,單擊其下面的“Other Downloads鏈接進(jìn)入Eclipse各版本的下載頁(yè)面,選擇需要的版本和相應(yīng)的平臺(tái),進(jìn)行下載。本書(shū)中選用了較新版本,下載完成后,文件夾中有一個(gè)文件。此版本不需要安裝,只需解壓下載的文件,假設(shè)放在D:eclipse中。單擊

28、其中的即可運(yùn)行。441.3.4 MyEclipse的安裝與配置單純的Eclipse只能進(jìn)行Java桌面開(kāi)發(fā),如果要進(jìn)行Java Web開(kāi)發(fā),還需要安裝Eclipse插件。眾多軟件廠商和開(kāi)源組織開(kāi)發(fā)了相應(yīng)的插件,其中以MyEclipse插件最為知名且常用。MyEclipse是一個(gè)由眾多插件結(jié)合的插件集合,通過(guò)安裝它可以很方便的進(jìn)行Java Web開(kāi)發(fā),本節(jié)將詳細(xì)介紹如何下載并安裝MyEclipse。 MyEclipse的安裝分為插件版本和ALL in ONE版本,其中ALL in ONE版本無(wú)需自己另外下載安裝和配置JDK,Eclipse 3.4, 因此如果你打算已最快的速度裝好MyEclips

29、e,可以選擇ALL in ONE 版本。 451.安裝安裝非常簡(jiǎn)單,只需雙擊文件按照提示進(jìn)行安裝即可。2.注冊(cè)Steven 3.漢化 根據(jù)漢化插件中的提示進(jìn)行漢化即可,或者通過(guò)在線更新的方式進(jìn)行。46使用MyEclipse進(jìn)行Web開(kāi)發(fā) 1.4.1 Java Web應(yīng)用根本結(jié)構(gòu) Java Web應(yīng)用有一個(gè)根本的組織結(jié)構(gòu),一個(gè)完整的Java Web應(yīng)用必須有一個(gè)WEB-INF目錄,該目錄下必須有一個(gè)名為的文件,叫做Java Web應(yīng)用配置文件。除此之外,這個(gè)WEB-INF目錄下會(huì)有一個(gè)classes目錄用于放置編譯后的Java類(lèi)文件,一個(gè)lib目錄用于保存需要的jar包,例如訪問(wèn)數(shù)據(jù)庫(kù)需要的SQ

30、L驅(qū)動(dòng)包。圖1-13顯示了bookshop應(yīng)用的結(jié)構(gòu)。對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),在開(kāi)發(fā)階段一個(gè)Java Web應(yīng)用還遠(yuǎn)不止這些內(nèi)容,比方Java源文件、javadoc、工程文檔、各種配置文件等,對(duì)于特殊的應(yīng)用,如Struts應(yīng)用那么還要有對(duì)應(yīng)的配置文件struts-和包文件、commons-等。47481.4.2 使用MyEclipse新建Web工程1啟動(dòng)MyEclipse開(kāi)發(fā)環(huán)境工作空間選擇為D:workspace,選擇【文件】|【新建】|【W(wǎng)eb Project】,翻開(kāi)【New Web Project】對(duì)話(huà)框。2在“Project Name文本框中輸入Web工程名稱(chēng),如:Prj_test?!癝ou

31、rse folder文本框是用于指明存儲(chǔ)工程源文件的文件夾,“Web root folder文本框用來(lái)指明Web工程文件的存放文件夾。這兩項(xiàng)都可以采用默認(rèn)設(shè)置?!癱ontext root URL文本框用于指明訪問(wèn)該站點(diǎn)的根路徑,在默認(rèn)情況下為“/加上工程名稱(chēng)。“J2EE Specification Level用來(lái)選擇J2EE標(biāo)準(zhǔn)版本。至于Maven和JSTL支持,那么可以根據(jù)實(shí)際情況來(lái)選擇是否添加3完成工程配置后,單擊【完成】按鈕,完成Web工程的創(chuàng)立。在包資源管理器中即可看到該工程名稱(chēng)及結(jié)構(gòu)。 49Java Web實(shí)際上是由一些組件組合起來(lái)協(xié)同工作的,這些組件包括:Servlet、Liste

32、ner、Filter、JSP頁(yè)面等,對(duì)于Struts應(yīng)用還有Action、ActionForm等。而組織和協(xié)調(diào)這些組件的,是一系列的配置文件。Java Web最根本的配置文件是,Struts應(yīng)用那么有額外的Struts-等配置文件。501.4.3 MyEclipse中新建JSP頁(yè)面 新建的工程還是一個(gè)空工程,可以在該工程中添加JSP頁(yè)面。在MyEclipse中新建JSP頁(yè)面的步驟如下:1為了使得JSP文件結(jié)構(gòu)更清晰,可以先創(chuàng)立一些子文件夾,如先在包資源管理器中Web工程的WebRoot文件夾中創(chuàng)立子文件夾ch01。方法如下:右擊WebRoot選擇【新建】|【文件夾】,從彈出的對(duì)話(huà)框中輸入文件夾名稱(chēng)即可。2找到要?jiǎng)?chuàng)立JSP頁(yè)面的文件夾ch01,右鍵單擊選擇【新建】|【JSP】,彈出如圖1-16所示的對(duì)話(huà)框。在“File Name文本框中輸入文件名字,單擊【完成】即可完成JSP頁(yè)面的創(chuàng)立,并且MyEclipse會(huì)自動(dòng)翻開(kāi)新建的JSP頁(yè)面。 511.4.4 MyEclipse整合TomcatMyEclipse提供了針對(duì)Web效勞器的很好的整合策略,通過(guò)MyEclipse整合Tomcat,即可方便的通過(guò)MyEclipse來(lái)調(diào)試或發(fā)布Web工程。步驟如下:1單擊【窗口】|【首選項(xiàng)】,彈出“首選項(xiàng)配置窗口2展開(kāi)“MyEclipse E

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論