第01章JSP初步及服務(wù)器配置

上傳人:搶*** 文檔編號(hào):243127594 上傳時(shí)間:2024-09-16 格式:PPT 頁數(shù):77 大?。?.18MB
收藏 版權(quán)申訴 舉報(bào) 下載
第01章JSP初步及服務(wù)器配置_第1頁
第1頁 / 共77頁
第01章JSP初步及服務(wù)器配置_第2頁
第2頁 / 共77頁
第01章JSP初步及服務(wù)器配置_第3頁
第3頁 / 共77頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《第01章JSP初步及服務(wù)器配置》由會(huì)員分享,可在線閱讀,更多相關(guān)《第01章JSP初步及服務(wù)器配置(77頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,第1章,JSP,初步,1.,3,JSP,技術(shù)特性,1.,4,JSP,工作原理,1,.,5,搭建,JSP,的運(yùn)行環(huán)境,1.,7,JSP,程序初步,1.1 認(rèn)識(shí),JSP,1.2 動(dòng)態(tài)網(wǎng)頁技術(shù)比較,1,.,6,JSP,程序開發(fā),模式,1.1 認(rèn)識(shí),JSP(1),Java Server Page,簡稱,JSP,,是運(yùn)行在服務(wù)器端的腳本語言之一。熟悉,HTML,或者其他動(dòng)態(tài)頁面技術(shù)的讀者,在第一次看到,JSP,頁面時(shí)可能會(huì)有一種似曾相識(shí)的感覺。這是因?yàn)閺谋举|(zhì)上說,各種動(dòng)態(tài)頁面技術(shù)都是通過在,HTML,中添加其他語言

2、腳本的方式來實(shí)現(xiàn)的,而支持這些腳本的服務(wù)器可以執(zhí)行這些腳本,然后生成,HTML,頁面。,第一個(gè),JSP,程序,在上述代碼中,代碼風(fēng)格和普通的,HTML,頁面的代碼非常相似,不同的就是位于,“”,之間加入,Java,代碼。,為了讓讀者直觀認(rèn)識(shí),JSP,技術(shù),先來看一個(gè)簡單的,JSP,頁面代碼,該,JSP,頁面名稱為,sanyang.jsp,,實(shí)現(xiàn)向頁面輸入一句話,具體代碼如下:,1.1 認(rèn)識(shí),JSP (2),1.1 認(rèn)識(shí),JSP (3),將該頁面發(fā)布在,Web,容器中,并在,IE,瀏覽該網(wǎng)頁后,其運(yùn)行結(jié)果如下圖所示。,1.2,動(dòng)態(tài)網(wǎng)頁技術(shù)比較,CGI,ASP,PHP,ASP.NET,CGI,CG

3、I,是最早用來創(chuàng)建動(dòng)態(tài)網(wǎng)頁的一種技術(shù),它可以使瀏覽器與服務(wù)器之間產(chǎn)生互動(dòng)關(guān)系。,Common Gateway Interface,是,CGI,的全稱,即,通用網(wǎng)關(guān)接口,。它允許使用不同的語言來編寫適合的,CGI,程序,該程序被放在,Web,服務(wù)器上運(yùn)行。當(dāng)客戶端發(fā)出請(qǐng)求給服務(wù)器時(shí),服務(wù)器根據(jù)客戶請(qǐng)求建立一個(gè)新的進(jìn)程來執(zhí)行指定的,CGI,程序,并將執(zhí)行結(jié)果以網(wǎng)頁的類型傳輸?shù)娇蛻舳说臑g覽器上進(jìn)行顯示。,CGI,可以說是當(dāng)前應(yīng)用程序的基礎(chǔ)技術(shù),但這種技術(shù),編制方式比較困難而且效率低下,,因?yàn)槊看雾撁姹徽?qǐng)求的時(shí)候,都要求服務(wù)器重新將,CGI,程序編譯成可執(zhí)行的代碼。在,CGI,中使用最為常見的語言為,

4、C/C+,、,Java,和,Perl,(,Practical Extraction and Report Language,,文件分析報(bào)告語言)。,ASP,ASP,(,Active Server Page,)是一種使用很廣泛的開發(fā)動(dòng)態(tài)網(wǎng)站的技術(shù)。它通過在頁面代碼中嵌入,VBScript,或,JavaScript,腳本語言來生成動(dòng)態(tài)的內(nèi)容,在服務(wù)器端必須安裝了適當(dāng)?shù)慕忉屍骱?,才可以通過調(diào)用此解釋器來執(zhí)行腳本程序,然后將執(zhí)行結(jié)果與靜態(tài)內(nèi)容部分結(jié)合并傳送到客戶端瀏覽器上。對(duì)于一些復(fù)雜的操作,,ASP,可以調(diào)用存在于后臺(tái)的,COM,組件來完成,所以說,COM,組件,無限地?cái)U(kuò)充了,ASP,的能力;正因如

5、此依賴本地的,COM,組件,使得,ASP,主要用于,Windows,平臺(tái)中。,ASP,存在很多優(yōu)點(diǎn),簡單易學(xué),并且,ASP,是與,微軟的,IIS,捆綁在一起,在安裝,Windows 2000,、,Windows XP,的同時(shí)安裝上,IIS,,就可以運(yùn)行,ASP,應(yīng)用程序了。,PHP,PHP,來自于,Personal Home Page,一詞,但現(xiàn)在的,PHP,已經(jīng)不再表示名詞的縮寫,而是一種開發(fā)動(dòng)態(tài)網(wǎng)頁技術(shù)的名稱。,PHP,語法類似于,C,,并且混合了,Perl,、,C+,和,Java,的一些特性。它是一種開源的,Web,服務(wù)器腳本語言,與,ASP,和,JSP,一樣可以在頁面中加入腳本代碼來生

6、成動(dòng)態(tài)內(nèi)容。對(duì)于一些復(fù)雜的操作可以封裝到函數(shù)或類中,在,PHP,中提供了許多已經(jīng)定義好的函數(shù),例如提供的標(biāo)準(zhǔn)的數(shù)據(jù)庫接口,使得數(shù)據(jù)庫連接方便,擴(kuò)展性強(qiáng)。,PHP,可以被多個(gè)平臺(tái)支持,主要被廣泛應(yīng)用于,UNIX/Linux,平臺(tái),。由于,PHP,本身的代碼對(duì)外開放,經(jīng)過許多軟件工程師的檢測,因此到目前為止該技術(shù)具有公認(rèn)的安全性能。,ASP.NET,ASP.NET,也是一種建立動(dòng)態(tài),Web,應(yīng)用程序的技術(shù),它是,.NET,框架的一部分,可以使用任何,.NET,兼容的語言,如,Visual Basic.NET,,,C#,,,J#,等來編寫,ASP.NET,應(yīng)用程序。這種,ASP.NET,頁面(,We

7、b Forms,)編譯后可以提供比腳本語言更出色的性能表現(xiàn)。,Web Forms,允許在網(wǎng)頁基礎(chǔ)上建立強(qiáng)大的窗體。當(dāng)建立頁面時(shí),可以使用,ASP.NET,服務(wù)端控件,來建立常用的,UI,元素,并對(duì)它們編程來完成一般的任務(wù)。這些控件允許開發(fā)者使用內(nèi)建,可重用的組件和自定義組件來快速建立,Web Form,,使代碼簡單化。,JSP,技術(shù),Java Server Pages,簡稱,JSP,,是由,Sun,公司倡導(dǎo),與多個(gè)公司共同建立的一種技術(shù)標(biāo)準(zhǔn),它建立在,Servlet,之上。應(yīng)用,JSP,,程序員或非程序員可以高效率地創(chuàng)建,Web,應(yīng)用程序,并使得開發(fā)的,Web,應(yīng)用程序具有安全性高、跨平臺(tái)等優(yōu)

8、點(diǎn)。,JSP,是運(yùn)行在服務(wù)器端的腳本語言之一,與其他的服務(wù)器端腳本語言一樣,是用來開發(fā)動(dòng)態(tài)網(wǎng)頁的一種技術(shù)。,JSP,頁面由傳統(tǒng)的,HTML,代碼和嵌入到其中的,Java,代碼組成,。當(dāng)用戶請(qǐng)求一個(gè),JSP,頁面時(shí),服務(wù)器會(huì)執(zhí)行這些,Java,代碼,然后將結(jié)果與頁面中的靜態(tài)部分相結(jié)合返回給客戶端瀏覽器。,JSP,頁面中還包含了各種特殊的,JSP,元素,通過這些元素可以訪問其他的動(dòng)態(tài)內(nèi)容并將它們嵌入到頁面中,例如,訪問,JavaBean,組件,的,動(dòng)作元素。程序員還可以通過編寫自己的元素來實(shí)現(xiàn)特定的功能,開發(fā)出更為強(qiáng)大的,Web,應(yīng)用程序。,JSP,是在,Servlet,的基礎(chǔ)上開發(fā)的技術(shù),它繼承

9、了,Java Servlet,的各項(xiàng)優(yōu)秀功能。而,Java Servlet,是作為,Java,的一種解決方案,在制作網(wǎng)頁的過程中,它繼承了,Java,的所有特性。因此,JSP,同樣繼承了,Java,技術(shù)的簡單、便利、面向?qū)ο?、跨平臺(tái)和安全可靠等優(yōu)點(diǎn),比起其他服務(wù)器腳本語言,,JSP,更加簡單、迅速和有力。在,JSP,中利用,JavaBean,和,JSP,元素,可以有效地將靜態(tài)的,HTML,代碼和動(dòng)態(tài)數(shù)據(jù)區(qū)分開來,給程序的修改和擴(kuò)展帶來了很大方便。,Servlet,技術(shù),Servlet,是在,JSP,之前就存在的運(yùn)行在服務(wù)端的一種,Java,技術(shù),它是用,Java,語言編寫的服務(wù)器端程序,,Ja

10、va,語言能夠?qū)崿F(xiàn)的功能,,Servlet,基本上都可以實(shí)現(xiàn)(除圖形界面外)。,Servlet,主要用于處理,Http,請(qǐng)求,并將處理的結(jié)果傳遞給瀏覽器生成動(dòng)態(tài),Web,頁面。,Servlet,具有可移植(可在多種系統(tǒng)平臺(tái)和服務(wù)器平臺(tái)下運(yùn)行)、功能強(qiáng)大、安全、可擴(kuò)展和靈活等優(yōu)點(diǎn)。,在,JSP,中用到的,Servlet,通常都繼承自,javax.servlet.http.HttpServlet,類,在該類中實(shí)現(xiàn)了用來處理,Http,請(qǐng)求的大部分功能。,JSP,是在,Servlet,的基礎(chǔ)上開發(fā)的一種新的技術(shù),所以,JSP,與,Servlet,有著密不可分的關(guān)系。,JSP,頁面在執(zhí)行過程中會(huì)被轉(zhuǎn)換

11、為,Servlet,,然后由服務(wù)器執(zhí)行該,Servlet,。,JavaBean,技術(shù),JavaBean,是根據(jù)特殊的規(guī)范編寫的普通的,Java,類,可稱它們?yōu)椤蔼?dú)立的組件”。每一個(gè),JavaBean,實(shí)現(xiàn)一個(gè)特定的功能,通過合理地組織具有不同功能的,JavaBean,,可以快速地生成一個(gè)全新的應(yīng)用程序。如果將這個(gè)應(yīng)用程序比作一輛汽車,那么程序中的,JavaBean,就好比組成這輛汽車的不同零件。對(duì)于程序開發(fā)人員來說,,JavaBean,的最大優(yōu)點(diǎn)就是充分提高了代碼的可重用性,并且對(duì)程序的后期維護(hù)和擴(kuò)展起到了積極的作用。,JavaBean,可按功能劃分為可視化和不可視化兩種??梢暬?JavaBe

12、an,主要應(yīng)用在圖形界面編程的領(lǐng)域中,在,JSP,中通常應(yīng)用不可視化,JavaBean,,應(yīng)用這種,JavaBean,可用來封裝各種業(yè)務(wù)邏輯,例如連接數(shù)據(jù)庫、獲取當(dāng)前時(shí)間等。這樣,當(dāng)在開發(fā)程序的過程中需要連接數(shù)據(jù)庫或?qū)崿F(xiàn)其他功能時(shí),就可直接在,JSP,頁面或,Servlet,中調(diào)用實(shí)現(xiàn)該功能的,JavaBean,來實(shí)現(xiàn)。,通過應(yīng)用,JavaBean,,可以很好地將業(yè)務(wù)邏輯和前臺(tái)顯示代碼分離,這大大提高了代碼的可讀性和易維護(hù)性。,1.,3,JSP,技術(shù)特性 (1),跨平臺(tái),JSP,技術(shù)以,Java,為基礎(chǔ)、所以不僅可以沿用,Java,強(qiáng)大的,API,功能,而且不管是在何種平臺(tái)下只要服務(wù)器支持,J

13、SP,,就可以運(yùn)行使用,JSP,開發(fā)的,Web,應(yīng)用程序,體現(xiàn)了它的跨平臺(tái)、跨服務(wù)器的特點(diǎn)。例如,在,Windows NT,下的,IIS,通過,JRUN,或,ServletExec,插件就能支持,JSP。,如今最流行的,Web,服務(wù)器,Apache,同樣能夠支持,JSP,,而且,Apache,支持多種平臺(tái),從而使得,JSP,可以在更多的平臺(tái)上運(yùn)行。,在數(shù)據(jù)庫操作中,因?yàn)?JDBC,同樣是獨(dú)立于平臺(tái)的,所以在,JSP,中使用的,Java API,中提供的,JDBC,來連接數(shù)據(jù)庫,就不用擔(dān)心平臺(tái)變更時(shí)的代碼移植問題。,1.,3,JSP,技術(shù)特性 (2),將內(nèi)容的生成和顯示進(jìn)行分離,使用,JSP,技

14、術(shù),,Web,頁面開發(fā)人員可以使用,HTML,或,XML,標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。使用,JSP,標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和,JavaBeans,組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和,Beans,中。那么其開發(fā)人員,如,Web,管理人員和頁面設(shè)計(jì)者,能夠編輯和使用,JSP,頁面,而不影響內(nèi)容的生成。,在服務(wù)器端,,JSP,引擎解釋,JSP,標(biāo)識(shí)和小腳本,生成所請(qǐng)求的內(nèi)容(例如,通過訪問,JavaBeans,組件,使用,JDBC,技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且將結(jié)果以,HTML,(,或者,XML,),頁面

15、的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于,HTML,的,Web,瀏覽器的完全可用性。,1.,3,JSP,技術(shù)特性 (3),強(qiáng)調(diào)可重用的組件,絕大多數(shù),JSP,頁面依賴于可重用的,跨平臺(tái)的組件(,JavaBeans,或者企業(yè)級(jí),JavaBean,組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。,1.,3,JSP,技術(shù)特性 (4),采用標(biāo)識(shí)簡化頁面開發(fā),JSP,采用標(biāo)識(shí)簡化頁面開發(fā)具有以下5

16、個(gè)特點(diǎn):,(1),Web,頁面開發(fā)人員不會(huì)都是熟悉腳本語言的編程人員。,JavaServer Page,技術(shù)封裝了許多功能,這些功能是在易用的、與,JSP,相關(guān)的,XML,標(biāo)識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。,(2)標(biāo)準(zhǔn)的,JSP,標(biāo)識(shí)能夠訪問和實(shí)例化,JavaBeans,組件,設(shè)置或者檢索組件屬性,下載,Applet,,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。通過開發(fā)定制化標(biāo)識(shí)庫,,JSP,技術(shù)是可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識(shí)庫。這使得,Web,頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識(shí)一樣的執(zhí)行特定功能的構(gòu)件來工作。,1.,3,JSP,技術(shù)特性 (5),

17、采用標(biāo)識(shí)簡化頁面開發(fā),(3),JSP,技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持企業(yè)級(jí)的分布式應(yīng)用。作為采用,Java,技術(shù)家族的一部分,以及,Java 2(,企業(yè)版體系結(jié)構(gòu))的一個(gè)組成部分,,JSP,技術(shù)能夠支持高度復(fù)雜的基于,Web,的應(yīng)用。,(4)由于,JSP,頁面的內(nèi)置腳本語言是基于,Java,編程語言的,而且所有的,JSP,頁面都被編譯成為,Java Servlet,JSP,頁面就具有,Java,技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。,(,5,)作為,Java,平臺(tái)的一部分,,JSP,擁有,Java,編程語言,“,一次編寫,各處運(yùn)行,”,的特

18、點(diǎn)。隨著越來越多的供應(yīng)商將,JSP,支持添加到它們的產(chǎn)品中,用戶可以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。,1.,3,JSP,技術(shù)特性 (6),健壯性與安全性,由于,JSP,頁面的內(nèi)置腳本語言是基于,Java,編程語言的,且都編譯成,Java Servlet,,,它具有,Java,技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。,1.,3,JSP,技術(shù)特性 (,7,),預(yù)編譯,預(yù)編譯是,JSP,的另一個(gè)重要的特性。,JSP,頁面在被服務(wù)器執(zhí)行前,都是已經(jīng)被編譯好的,并且通常只進(jìn)行一次編譯,即在,JSP,頁面被第一次請(qǐng)求時(shí)進(jìn)行編譯,在后續(xù)的請(qǐng)求中如果,JSP,頁面沒有被修

19、改過,服務(wù)器只需要直接調(diào)用這些已經(jīng)被編譯好的代碼,這大大提高了訪問速度。,1.,4,JSP,工作原理,-,JSP,的處理過程,客戶端,帶有,JSP,引擎的,Web,服務(wù)器,JSP,文件,Servlet,代碼,Class,文件,客戶端通過瀏覽器向服務(wù)器發(fā)出請(qǐng)求,在該請(qǐng)求中包含了請(qǐng)求的資源的路徑,這樣當(dāng)服務(wù)器接收到該請(qǐng)求后就可以知道被請(qǐng)求的資源,請(qǐng)求,響應(yīng),服務(wù)器根據(jù)接收到的客戶端的請(qǐng)求來加載被請(qǐng)求的,JSP,文件,加載,轉(zhuǎn)化,Web,服務(wù)器中的,JSP,引擎會(huì)將被加載的,JSP,文件轉(zhuǎn)化為,Servlet,編譯,執(zhí)行,注:虛線箭頭代表服務(wù)器的操作,JSP,引擎將生成的,Servlet,代碼編譯成

20、,Class,文件,服務(wù)器執(zhí)行這個(gè),Class,文件,服務(wù)器將執(zhí)行結(jié)果發(fā)送給瀏覽器進(jìn)行顯示,1.,4,JSP,工作原理,-,JSP,的處理過程,JSP,轉(zhuǎn)換成,Servlet,的流程如下圖所示,。,1.,4,JSP,工作原理,-,JSP,的處理過程,從前面的介紹中可以看到,,JSP,文件被,JSP,引擎進(jìn)行轉(zhuǎn)換后,又被編譯成了,Class,文件,最終由服務(wù)器通過執(zhí)行這個(gè),Class,文件來對(duì)客戶端的請(qǐng)求進(jìn)行響應(yīng)。其中第,3,步與第,4,步構(gòu)成了,JSP,處理過程中的翻譯階段,而第,5,步為請(qǐng)求處理階段。,但并不是每次請(qǐng)求都需要重復(fù)進(jìn)行這樣的處理。當(dāng)服務(wù)器第一次接收到對(duì)某個(gè)頁面的請(qǐng)求時(shí),,JSP

21、,引擎就開始進(jìn)行上述的處理過程,將被請(qǐng)求的,JSP,文件編譯成,Class,文件。在后續(xù)對(duì)該頁面再次進(jìn)行請(qǐng)求時(shí),若頁面沒有進(jìn)行任何改動(dòng),服務(wù)器只需直接調(diào)用,Class,文件執(zhí)行即可。所以當(dāng)某個(gè),JSP,頁面第一次被請(qǐng)求時(shí),會(huì)有一些延遲,而再次訪問時(shí)會(huì)感覺快了很多。如果被請(qǐng)求的頁面經(jīng)過修改,服務(wù)器將會(huì)重新編譯這個(gè)文件,然后執(zhí)行。,1.,4,JSP,工作原理,-,JSP,的處理過程,從本質(zhì)上說,,JSP,是結(jié)合,markup,(,HTML,或,XML,),和,Java,代碼來處理的一種動(dòng)態(tài)頁面。每一頁第一次被調(diào)用時(shí),通過,JSP,引擎自動(dòng)被編譯成,Servlet,,,然后被執(zhí)行。例如,在,1.1,

22、節(jié)中介紹的,sanyang.jsp,頁面在,Tomcat,服務(wù)器運(yùn)行時(shí),該頁面將會(huì)轉(zhuǎn)編譯一個(gè),Servlet,,,其中,該頁面在,Tomcat,服務(wù)器上編譯成,Servlet,的源代碼可以查看,Tomcat,安裝盤下的,workCatalinalocalhost,相應(yīng)的位置。,說明:,JSP,轉(zhuǎn)換成,Servlet,的代碼存放在,Tomcat,服務(wù)器的安裝文件夾下,一般情況下,轉(zhuǎn)換成,Servlet,的代碼具體路徑是:,Tomcat,安裝文件夾,workCatalinalocalhost。,通過該文件夾下的工程名去尋找。,1.,4,JSP,工作原理,-,JSP,的處理過程,在一個(gè),JSP,文件

23、第一次被請(qǐng)求時(shí),,JSP,引擎先把該,JSP,文件轉(zhuǎn)換成一個(gè),Java,源文件,在轉(zhuǎn)換時(shí),如果發(fā)現(xiàn),JSP,文件有任何語法錯(cuò)誤,轉(zhuǎn)換過程將中斷,并向服務(wù)器端和客戶端輸出錯(cuò)誤信息;如果轉(zhuǎn)換成功,,JSP,引擎調(diào)用,Java,虛擬機(jī)的,javac,程序把該,Java,文件源文件編譯成相應(yīng)的,class,文件,該,class,文件也就是一個(gè),Servlet,程序,然后創(chuàng)建一個(gè)該,Serlvet,的實(shí)例,提供服務(wù)響應(yīng)用戶的請(qǐng)求。,1.,5,搭建,JSP,的運(yùn)行環(huán)境,JSP,的運(yùn)行環(huán)境,JDK,的安裝與配置,Tomcat,的安裝、運(yùn)行與目錄結(jié)構(gòu),Eclipse,安裝、運(yùn)行與特性,JSP,的運(yùn)行環(huán)境,使用

24、,JSP,進(jìn)行開發(fā),需要具備以下對(duì)應(yīng)的運(yùn)行環(huán)境:,Web,瀏覽器、,Web,服務(wù)器、,JDK,開發(fā)工具包以及數(shù)據(jù)庫。下面分別介紹這些環(huán)境。,1,Web,瀏覽器,瀏覽器主要用于客戶端用戶訪問,Web,應(yīng)用的工具,與開發(fā),JSP,應(yīng)用不存在很大的關(guān)系,所以開發(fā),JSP,對(duì)瀏覽器的要求并不是很高,任何支持,HTML,的瀏覽器都可以。,2,Web,服務(wù)器,Web,服務(wù)器是運(yùn)行及發(fā)布,Web,應(yīng)用的大容器,只有將開發(fā)的,Web,項(xiàng)目放置到該容器中,才能使網(wǎng)絡(luò)中的所有用戶通過瀏覽器進(jìn)行訪問。開發(fā),JSP,應(yīng)用所采用的服務(wù)器主要是,Servlet,兼容的,Web,服務(wù)器,比較常用的有,BEA WebLogi

25、c,、,IBM WebSphere,和,Apache Tomcat,等。,Tomcat,服務(wù)器最為流行,它是,Apache-Jarkarta,開源項(xiàng)目中的一個(gè)子項(xiàng)目,是一個(gè)小型的、輕量級(jí)的、支持,JSP,和,Servlet,技術(shù)的,Web,服務(wù)器,它已經(jīng)成為學(xué)習(xí)開發(fā),JSP,應(yīng)用的首選,本書中的所有例子都使用了,Tomcat,作為,Web,服務(wù)器,所以對(duì)該服務(wù)器的安裝與配置在后面的學(xué)習(xí)中還將進(jìn)行講解。目前,Tomcat,的最新版本為,apache-tomcat-6.0.14,。,3,JDK,JDK,(,Java Develop Kit,,,Java,開發(fā)工具包)包括運(yùn)行,Java,程序所必須的

26、,JRE,環(huán)境及開發(fā)過程中常用的庫文件。在使用,JSP,開發(fā)網(wǎng)站之前,首先必須安裝,JDK,,目前,JDK,的最新版本為,jdk1.6.0_03,。,4,數(shù)據(jù)庫,任何項(xiàng)目的開發(fā)幾乎都需要使用數(shù)據(jù)庫,數(shù)據(jù)庫用來存儲(chǔ)項(xiàng)目中需要的信息。根據(jù)項(xiàng)目的規(guī)模,應(yīng)采用合適的數(shù)據(jù)庫。如大型項(xiàng)目可采用,Oracle,數(shù)據(jù)庫,中型項(xiàng)目可采用,Micosoft SQL Server,或,MySQL,數(shù)據(jù)庫,小型項(xiàng)目可采用,Microsoft Access,數(shù)據(jù)庫。,Microsoft Access,數(shù)據(jù)庫的功能遠(yuǎn)比不上,Microsoft SQL Server,和,MySQL,強(qiáng)大,但它具有方便、靈活的特點(diǎn),對(duì)于一些

27、小型項(xiàng)目來說是比較理想的選擇。,JDK,的安裝(1),(1)雙擊“,jdk-6u10-windows-i586-p.exe”,文件開始安裝。安裝向?qū)?huì)要求接受,Sun,公司的許可協(xié)議,如下圖所示。,JDK,的安裝(2),(,2,)單擊,“,接受,”,按鈕接受許可協(xié)議后,打開設(shè)置,JDK,的安裝路徑及選擇安裝組件的對(duì)話框,如下圖所示。,JDK,的安裝(3),(,3,)在圖,1-4,所示的對(duì)話框中單擊,“,更改,”,按鈕,更改安裝路徑為,D:Program FilesJavajdk1.6.0_10,,,其他采用默認(rèn)設(shè)置,單擊,“,下一步,”,按鈕將打開安裝進(jìn)度對(duì)話框安裝,JDK,。,在安裝過程中將

28、打開如下圖所示的設(shè)置,JRE,安裝路徑的對(duì)話框。,說明:由于,JDK,只是,Java,程序的開發(fā)環(huán)境,所以,JDK,的安裝文件中還包含了一個(gè),JRE(J2SE Runtime Environment)Java,運(yùn)行環(huán)境,在默認(rèn)情況下同,JDK,一起安裝。,JDK,的安裝(4),(,4,)在設(shè)置,JER,安裝路徑的對(duì)話框中,單擊,“,更改,”,按鈕,在打開的對(duì)話框中將,JRE,的安裝路徑修改為,D:Program FilesJavajre6,,,單擊,“,下一步,”,按鈕繼續(xù)安裝,JRE,。,在彈出安裝完成的提示對(duì)話框中,取消,“,顯示自述文件,”,復(fù)選框的勾選,單擊,“,完成,”,按鈕,即可完

29、成,JDK,的安裝。,注意:在安裝,JDK1.6,之前,關(guān)閉所有正在運(yùn)行的程序,并確認(rèn)系統(tǒng)中沒有安裝,JDK,的其他版本,否則,在進(jìn)行配置時(shí)會(huì)有沖突。,下面將介紹,JDK,的配置,JDK,的配置(1),安裝完,JDK,后,需要設(shè)置環(huán)境變量及測試,JDK,配置是否成功,具體步驟如下:,(,1,)在,“,我的電腦,”,上單擊鼠標(biāo)右鍵,選擇,“,屬性,”,菜單項(xiàng)。在打開的,“,系統(tǒng)特性,”,對(duì)話框中選擇,“,高級(jí),”,選項(xiàng)卡,如下圖所示。,JDK,的配置(2),(,2,)單擊,“,環(huán)境變量,”,按鈕,打開,“,環(huán)境變量,”,對(duì)話框。在這里可以添加針對(duì)單個(gè)用戶的,“,用戶變量,”,和針對(duì)所有用戶,“,

30、系統(tǒng)變量,”,,如下圖所示。,JDK,的配置(3),(,3,)單擊,“,系統(tǒng)變量,”,區(qū)域中的,“,新建,”,按鈕,彈出的,“,新建系統(tǒng)變量,”,對(duì)話框。該對(duì)話框中,,“,變量名,”,文本框輸入,“,JAVA_HOME”,,,“,變量值,”,文本框輸入,JDK,的安裝路徑,“,D:Program FilesJavajdk1.6.0_10”,,,單擊,“,確定,”,按鈕,完整環(huán)境變量,“,JAVA_HOME”,的配置,如下圖所示。,JDK,的配置(4),(4)在系統(tǒng)變量中查看,PATH,變量,如果不存在,則新建變量,PATH,,否則選中該變量,單擊“編輯”按鈕,打開“編輯系統(tǒng)變量”對(duì)話框,在該對(duì)

31、話框的“變量值”文本框的起始位置添加“%,JAVA_HOME%bin;”。,(5),單擊“確定”按鈕返回到“環(huán)境變量”對(duì)話框。在系統(tǒng)變量中查看,CLASSPATH,變量,如果不存在,則新建變量,CLASSPATH,,變量值為“%,JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar”。,(6)JDK,程序的安裝和配置完成后,可以測試,JDK,是否能夠在計(jì)算機(jī)上運(yùn)行。,下面將介紹,JDK,的測試,JDK,的測試,選擇,“,開始,”,“,運(yùn)行,”,命令,在打開的,“,運(yùn)行,”,窗口中輸入,“,cmd”,命令,將進(jìn)入到,DOS,環(huán)境中,在命令提示符后面直接輸入,“,

32、javac”,,,按下,鍵,系統(tǒng)會(huì)輸出,javac,的幫助信息,如下圖所示。這說明已經(jīng)成功配置了,JDK,,,否則需要仔細(xì)檢查上面步驟的配置是否正確。,Tomcat,TOMCAT,安裝版本、非安裝版本,不同版本啟動(dòng),重要目錄結(jié)構(gòu),常見配置,Tomcat,安裝版(注意:防火墻),能自動(dòng)在,Windows中注冊(cè),,查找,“服務(wù)”,非安裝版(注意:防火墻),不能自動(dòng)在,Windows中注冊(cè)。手動(dòng)注冊(cè)方法:,1、正確配置JDK 2、,解壓放到,C:Tomcat,DOS,窗口執(zhí)行如下命令,:,cd c:Tomcatbin,C:TomcatWEBbinservice install tomcat,Inst

33、alling the service tomcat .,Using CATALINA_HOME: C:Tomcat-5.5.20-WEB,Using CATALINA_BASE: C:Tomcat-5.5.20-WEB,Using JAVA_HOME: C:jdk1.5.0_06,Using JVM: C:jdk1.5.0_06jrebinserverjvm.dll,The service tomcat has been installed.,C:Tomcat-binnet start tomcat,Apache Tomcat tomcat,服務(wù)正在啟動(dòng),.,Apache Tomcat tom

34、cat,服務(wù)已經(jīng)啟動(dòng)成功。,C:Tomcat-5.5.20-WEBbinnet stop tomcat,Apache Tomcat tomcat,服務(wù)已關(guān)閉,打開,IE,,放問,http:/localhost:8080,測試了(注意你自己指的端口),Tomcat,的安裝(1),Tomcat,服務(wù)器安裝文件下載的名稱是“,apache-tomcat-6.0.18.exe”,,下載完畢后,就可以在需要編譯和運(yùn)行,Java,程序的計(jì)算機(jī)安裝,Tomcat,服務(wù)器,具體步驟如下:,(1)雙擊“,apache-tomcat-6.0.18.exe”,文件開始安裝。在彈出的安裝向?qū)?duì)話框中,單擊“,Next

35、”,按鈕,將彈出如下圖所示的“許可協(xié)議”對(duì)話框。,Tomcat,的安裝(2),(,2,)單擊,“,I Agree”,按鈕,接受許可協(xié)議,出現(xiàn)如下圖所示的選擇組件對(duì)話框,選擇要安裝的,Tomcat,組件。,Tomcat,的安裝(3),(,3,)這里采用默認(rèn)的組件安裝的,單擊,“,Next”,按鈕,將彈出,“,選擇安裝位置,”,對(duì)話框,如下圖所示。,Tomcat,的安裝(4),(,4,)在,“,Desination Folder”,文本框中輸入,Tomcat,的安裝位置,或單擊文本框右側(cè),“,Browse”,按鈕,選擇服務(wù)器安裝的位置。筆者將其安裝在,“,D:Program FilesApache

36、 Software FoundationTomcat 6.0”,文件夾中。單擊,“,Next”,按鈕,將彈出如下圖所示的配置對(duì)話框。,Tomcat,的安裝(5),(,5,)單擊,“,Next”,按鈕,在打開的對(duì)話框中選擇,Java,虛擬機(jī)安裝位置,如下圖所示。,Tomcat,的安裝(6),(,6,)如上圖所示,一般情況下安城程序可以自動(dòng)找到,Java,虛擬機(jī)路徑設(shè)置。然后單擊,“,Install”,按鈕,開始安裝。在彈出的安裝對(duì)話框中單擊,“,Finish”,按鈕,完成安裝。,下面將介紹,Tomcat,的測試,Tomcat,的測試,(1),在安裝完,Tomcat,服務(wù)器后就可以運(yùn)行該服務(wù)器了,

37、具體步驟如下:,(,1,)在開始菜單中,依次單擊,“,開始,”,“,程序,”,“,Apache Tomcat 6.0”,“Configure Tomcat”,選項(xiàng),彈出啟動(dòng),Tomcat,服務(wù)器的界面,該界面可以對(duì),Tomcat,的一些參數(shù)進(jìn)行配置,一般采用默認(rèn)方式。單擊,“,start”,按鈕后,將,Tomcat,服務(wù)器啟動(dòng),如下圖所示。,Tomcat,的測試,(2),(,2,)打開,IE,瀏覽器,在地址欄中輸入,“,http:/localhost:8080”,,,運(yùn)行結(jié)果如下圖所示。,下面將介紹,Tomcat,安裝目錄的結(jié)構(gòu),非安裝版運(yùn)行方法,Startup.bat/shutdown.ba

38、t,DOS下運(yùn)行,CATALINA_HOME:D:tomcat,Path:d:tomcatbin,Startup.bat/shutdown.bat,轉(zhuǎn)成開機(jī)自啟動(dòng),非安裝版(注意:防火墻),不能自動(dòng)在,Windows中注冊(cè)。手動(dòng)注冊(cè)方法:,1、正確配置JDK 2、,解壓放到,C:Tomcat,DOS,窗口執(zhí)行如下命令,:,cd c:Tomcatbin,C:TomcatWEBbinservice install tomcat,Installing the service tomcat .,Using CATALINA_HOME: C:Tomcat-5.5.20-WEB,Using CATALIN

39、A_BASE: C:Tomcat-5.5.20-WEB,Using JAVA_HOME: C:jdk1.5.0_06,Using JVM: C:jdk1.5.0_06jrebinserverjvm.dll,The service tomcat has been installed.,C:Tomcat-binnet start tomcat,Apache Tomcat tomcat,服務(wù)正在啟動(dòng),.,Apache Tomcat tomcat,服務(wù)已經(jīng)啟動(dòng)成功。,C:Tomcat-5.5.20-WEBbinnet stop tomcat,Apache Tomcat tomcat,服務(wù)已關(guān)閉,Tom

40、cat,安裝目錄的結(jié)構(gòu),Tomcat,服務(wù)器安裝完畢后,打開,Tomcat,的安裝路徑,會(huì)看到如下圖所示的目錄結(jié)構(gòu)。,說明:如上圖所示,,conf,是存放,Tomcat,配置文件夾,其中最重要的是,server.xml,,可以在該文件中配置,Web,服務(wù)的端口、會(huì)話過期時(shí)間及虛擬主機(jī)等。,Tomcat,的配置,(注意:重新啟動(dòng)),1,、配置端口,配置文件,-confserver.xml(69),2、,配置目錄列表,配置,confweb.xml,參數(shù),listings,為,true(103),3,、配置虛擬目錄,配置虛擬目錄下的,web.xml,建立,WEB-INF/web.xml,(參考,we

41、bappsROOT,),配置實(shí)際目錄的虛擬映射,配置文件,-confserver.xml,中添加語句:,(145),HTTP,錯(cuò)誤的狀態(tài)碼:,404,:表示的是路徑錯(cuò)誤,,4XX,表示是客戶端請(qǐng)求錯(cuò)誤,500,:表示的是服務(wù)器錯(cuò)誤,,5XX,表示是程序錯(cuò)誤,4,、配置首頁,配置,confweb.xml,參數(shù),welcome-file(1199),自我理順,同時(shí)思考習(xí)題一,Eclipse,的安裝,Eclipse,安裝文件下載的名稱是,“,eclipse-jee-ganymede-SR1-win32.zip”,,,下載完畢后的安裝文件實(shí)際上是,“.,zip”,的壓縮文件。將其直接解壓到某個(gè)文件夾路

42、徑即可。,Eclipse,的運(yùn)行(1),在,Eclipse,解壓后的文件夾中,雙擊,“,Eclipse.exe”,文件,即可啟動(dòng),Eclipse,開發(fā)工具。啟動(dòng),Eclipse,的界面如下圖所示。,Eclipse,的運(yùn)行(2),第一次啟動(dòng),Eclipse,時(shí),需要配置,Eclipse,工作區(qū),實(shí)際上就是一個(gè)文件夾路徑。例如,可以將工作區(qū)域設(shè)置為,“,D:code3.4”,,,如下圖所示。,Eclipse,的運(yùn)行(3),啟動(dòng)以后,,Eclipse,工具的主界面如下圖所示。,說明:在運(yùn)行,Eclipse,之前,需要確定計(jì)算機(jī)上是否安裝了,JDK。,如果沒有安裝,JDK,,則,Eclipse,將無法

43、運(yùn)行。,Eclipse,的特性(1),Eclipse3.4,是,Eclipse,開發(fā)工具的最新版本,它與之前的版本有所不同,將一些基本的插件集成到該開發(fā)工具中以及加入到許多新特性,可以使用戶無需安裝其他的插件,方便的開發(fā)各種應(yīng)用程序。下面將介紹,Eclipse3.4,常用的特性。,(1)可以使用戶清晰的了解當(dāng)前操作類與項(xiàng)目之間的路徑,它主要包括包的路徑與文件夾的路徑。另外,用戶還可以自由地在同一路徑下的某個(gè)節(jié)點(diǎn)處,縱向切換到其他節(jié)點(diǎn),在節(jié)點(diǎn)所在位置做一些操作。例如,創(chuàng)建一個(gè)新類文件或縱向切換下一個(gè)節(jié)點(diǎn)。,(2)在代碼編寫區(qū)域中,只要將鼠標(biāo)移動(dòng)上去,即顯示解決方案信息。,(3)在代碼編寫區(qū)域中,

44、按,Ctrl+1,鍵,出現(xiàn)相關(guān)的提示信息。例如,提示創(chuàng)建,getXXX(),和,setXXX(),方法;抽出方法;將低性能的字符串拼接,改用,StringBuilder,或?qū)⒆址唇痈挠?MessageFormat,等提示信息。,Eclipse,的特性(2),(4)將代碼保存后,系統(tǒng)將自動(dòng)格式化代碼。,(5)將當(dāng)前代碼中的對(duì)象或變量選中,根據(jù)元素是被易用還是賦值(讀或?qū)懖僮鳎?,用不同的顏色進(jìn)行區(qū)分。,(6)自動(dòng)實(shí)現(xiàn)注釋標(biāo)識(shí)符(,annotation),的格式化。,(7),Junit,支持對(duì)線程內(nèi)每個(gè)方法的調(diào)用時(shí)間輸出。,(8)在,outline,里,支持對(duì)同一個(gè)類中,方法的重排序。,(9)新

45、增模擬服務(wù)端監(jiān)聽的,debug,功能。,1.6 JSP,程序開發(fā)模式,單純的,JSP,頁面編程,JSP+JavaBean,編程,JSP+Servlet+JavaBean,編程,MVC,模式,單純的,JSP,編程,在該模式下,通過應(yīng)用,JSP,中的腳本標(biāo)志,可直接在,JSP,頁面中實(shí)現(xiàn)各種功能。雖然這種模式很容易實(shí)現(xiàn),但是其缺點(diǎn)也非常明顯。因?yàn)閷⒋蟛糠值?Java,代碼與,HTML,代碼混淆在一起,會(huì)給程序的維護(hù)和調(diào)試帶來很多的困難,而且對(duì)于整個(gè)程序的結(jié)構(gòu)更是無從談起。這就好比規(guī)劃管理一個(gè)大的企業(yè),如果將負(fù)責(zé)不同任務(wù)的所有員工都安排在一起工作,勢必會(huì)造成公司秩序混亂、不易管理等許多的隱患。所以說

46、,單純的,JSP,頁面編程模式是無法應(yīng)用到大型、中型甚至小型的,JSP Web,應(yīng)用程序開發(fā)中。,JSP+JavaBean,編程,該模式是,JSP,程序開發(fā)經(jīng)典設(shè)計(jì)模式之一,適合小型或中型網(wǎng)站的開發(fā)。利用,JavaBean,技術(shù),可以很容易地完成一些業(yè)務(wù)邏輯上的操作,例如數(shù)據(jù)庫的連接、用戶登錄與注銷等。,JavaBean,是一個(gè)遵循了一定規(guī)則的,Java,類,在程序的開發(fā)中,將要進(jìn)行的業(yè)務(wù)邏輯封裝到這個(gè)類中,在,JSP,頁面中通過動(dòng)作標(biāo)簽來調(diào)用這個(gè)類,從而執(zhí)行這個(gè)業(yè)務(wù)邏輯。此時(shí)的,JSP,除了負(fù)責(zé)部分流程的控制外,大部分用來進(jìn)行頁面的顯示,而,JavaBean,則負(fù)責(zé)業(yè)務(wù)邏輯的處理??梢钥闯觯?/p>

47、該模式具有一個(gè)比較清晰的程序結(jié)構(gòu),在,JSP,技術(shù)的起步階段,,JSP+JavaBean,設(shè)計(jì)模式曾被廣泛應(yīng)用。下面將通過一個(gè)流程圖說明該模式對(duì)客戶端的請(qǐng)求進(jìn)行處理的過程。,客戶端,帶有,JSP,引擎的,Web,服務(wù)器,用戶通過客戶端瀏覽器請(qǐng)求服務(wù)器,服務(wù)器將最終的結(jié)果返回給客戶端瀏覽器進(jìn)行顯示,JSP,頁面,JavaBean,業(yè)務(wù),邏輯,數(shù)據(jù)庫,在,JavaBean,中連接及操作數(shù)據(jù)庫,或?qū)崿F(xiàn)其他業(yè)務(wù)邏輯,在,JSP,頁面中調(diào)用,JavaBean,服務(wù)器接收用戶請(qǐng)求后調(diào)用,JSP,頁,JavaBean,將執(zhí)行的結(jié)果返回,JSP,頁面,服務(wù)器讀取JSP頁面中的內(nèi)容(將頁面中的靜態(tài)與動(dòng)態(tài)內(nèi)容相結(jié)

48、合),JSP+Servlet+JavaBean,編程,JSP+JavaBean,設(shè)計(jì)模式雖然已經(jīng)將網(wǎng)站的業(yè)務(wù)邏輯和顯示頁面進(jìn)行分離,但這種模式下的,JSP,不但要進(jìn)行程序中大部分的流程控制,而且還要負(fù)責(zé)頁面的顯示,所以仍然不是一種理想的設(shè)計(jì)模式。,在,JSP+JavaBean,設(shè)計(jì)模式的基礎(chǔ)上加入,Servlet,來實(shí)現(xiàn)程序中的控制層,是一個(gè)很好的選擇。在這種模式中,由,Servlet,來執(zhí)行業(yè)務(wù)邏輯并負(fù)責(zé)程序的流程控制,,JavaBean,組件實(shí)現(xiàn)業(yè)務(wù)邏輯,充當(dāng)著模型的角色,,JSP,用于頁面的顯示??梢钥闯鲞@種模式使得程序中的層次關(guān)系更明顯,各組件的分工也非常明確。下面將通過一個(gè)流程圖說明

49、該模式對(duì)客戶端的請(qǐng)求進(jìn)行處理的過程。,客戶端,帶有,JSP,引擎的,Web,服務(wù)器,用戶通過客戶端瀏覽器請(qǐng)求服務(wù)器,服務(wù)器將最終的結(jié)果返回給客戶端瀏覽器進(jìn)行顯示,JSP,頁面,JavaBean,業(yè)務(wù),邏輯,數(shù)據(jù)庫,在,JavaBean,中連接及操作數(shù)據(jù)庫,或?qū)崿F(xiàn)其他業(yè)務(wù)邏輯,服務(wù)器接收用戶請(qǐng)求后調(diào)用,Servlet,Servlet根據(jù)用戶請(qǐng)求調(diào)用JavaBean處理業(yè)務(wù),服務(wù)器讀取JSP頁面中的內(nèi)容(將頁面中的靜態(tài)與動(dòng)態(tài)的內(nèi)容相結(jié)合),請(qǐng)求,響應(yīng),Servlet,調(diào)用,轉(zhuǎn)發(fā),由,Servlet,轉(zhuǎn)發(fā)請(qǐng)求到,JSP,頁面,JavaBean,將結(jié)果返回,Servlet,,在,Servlet,中將結(jié)

50、果保存到請(qǐng)求對(duì)象中,JSP+Servlet+JavaBean,模式遵循了,MVC,設(shè)計(jì)模式,,MVC,只是一個(gè)抽象的設(shè)計(jì)概念,它將待開發(fā)的應(yīng)用程序分解為三個(gè)獨(dú)立的部分:模型(,Model,)、視圖(,View,)和控制器(,Controller,)。雖然用來實(shí)現(xiàn),MVC,設(shè)計(jì)模式的技術(shù)可能都是相同的,但各公司都有自己的,MVC,架構(gòu)。也就是說,這些公司用來實(shí)現(xiàn)自己的,MVC,架構(gòu)所應(yīng)用的技術(shù)可能都是,JSP,、,Servlet,與,JavaBean,,但他們的流程及設(shè)計(jì)卻是不同的,所以工程師需要花更多的時(shí)間去了解。從項(xiàng)目的開發(fā)觀點(diǎn)上來說,因?yàn)樾枰O(shè)計(jì),MVC,各對(duì)象之間的數(shù)據(jù)交換格式與方法,所

51、以會(huì)需要花費(fèi)更多的時(shí)間在系統(tǒng)的設(shè)計(jì)上。,使用,JSP+Servlet+JavaBean,模式進(jìn)行項(xiàng)目開發(fā)時(shí),可以選擇一個(gè)實(shí)現(xiàn)了,MVC,模式的現(xiàn)成的框架,在此下進(jìn)行開發(fā),大大節(jié)省了開發(fā)時(shí)間,會(huì)取得事半功倍的效果。目前已有很多可以使用的現(xiàn)成的,MVC,框架,例如,Struts,框架。,JSP+JavaBean,編程與,JSP+Servlet+JavaBean,編程,是,JSP,開發(fā)中的兩種經(jīng)典設(shè)計(jì)模式。,MVC,MVC,(,Model-View-Controller,,模型,視圖,控制器)是一種程序設(shè)計(jì)概念,它同時(shí)適用于簡單的和復(fù)雜的程序。使用該模式可將待開發(fā)的應(yīng)用程序分解為,3,個(gè)獨(dú)立的部分:

52、模型、視圖和控制器。提出這種設(shè)計(jì)模式主要是因?yàn)閼?yīng)用程序中用來完成任務(wù)的代碼,模型(也稱為“業(yè)務(wù)邏輯”)通常是程序中相對(duì)穩(wěn)定的部分,并且會(huì)被重復(fù)使用,而程序與用戶進(jìn)行交互的頁面,視圖,卻是經(jīng)常改變的。如果因需要更新頁面而不得不對(duì)業(yè)務(wù)邏輯代碼進(jìn)行改動(dòng),或者要在不同的模塊中應(yīng)用到相同的功能而重復(fù)地編寫業(yè)務(wù)邏輯代碼,不僅降低了整體程序開發(fā)的進(jìn)程,而且會(huì)使程序變得難以維護(hù)。因此,將業(yè)務(wù)邏輯代碼與外觀呈現(xiàn)分離,將會(huì)更容易地根據(jù)需求的改變來改進(jìn)程序。,MVC,模式中的,Model,(模型)指的是業(yè)務(wù)邏輯的代碼,是應(yīng)用程序中真正用來完成任務(wù)的部分。,View,(視圖),實(shí)際上就是程序與用戶進(jìn)行交互的界面,用戶

53、可以看到它的存在。視圖可以具備一定的功能并應(yīng)遵守對(duì)其的約束,在視圖中不應(yīng)包含對(duì)數(shù)據(jù)處理的代碼,即業(yè)務(wù)邏輯代碼。,Controller,(控制器),主要控制用戶請(qǐng)求并作出響應(yīng)。它根據(jù)用戶的請(qǐng)求選擇模型或修改模型,并決定返回怎樣的視圖。,1.7 JSP,程序初步,Eclipse,是一個(gè)成熟的、可擴(kuò)展的,Java,的開發(fā)工具。在該工具之前的版本,它的平臺(tái)體系結(jié)構(gòu)是在插件概念的基礎(chǔ)上構(gòu)建的,而最新版本的,Eclipse3.4,將一些基本的插件都集成在一起,可以開發(fā)出各種類型應(yīng)用程序。本小節(jié)將介紹如何利用,Eclipse3.4,開發(fā)工具編寫一個(gè),JSP,頁并部署在,Tomcat,服務(wù)器上。,1.,7,.

54、1 創(chuàng)建,JSP,頁,1.,7,.2,部署,JSP,程序,創(chuàng)建,JSP,頁(1),Eclipse3.4,創(chuàng)建一個(gè),JSP,頁主要步驟如下:,(1)啟動(dòng),Eclipse3.4,開發(fā)工具后,在菜單欄中,依次選擇“,File”“New”“Dynamic Web Project”,命令,如下圖所示。,創(chuàng)建,JSP,頁(2),(,2,)在彈出的,“,New Dynamic Web Project”,對(duì)話框中,輸入,JSP,項(xiàng)目中的各種信息。其中,在,“,Project name”,輸入框中,輸入,JSP,應(yīng)用程序的名稱,本實(shí)例為,“,sanyang”,,,其他選項(xiàng)采用默認(rèn)設(shè)置如下圖所示。,創(chuàng)建,JSP,

55、頁(3),(3)單擊“,Finish”,按鈕,創(chuàng)建了該,Web,應(yīng)用程序。,(4)依次展開“,sanyang”“WebContent”,文件夾,在該文件夾下創(chuàng)建名為,index.jsp,頁面,如下兩個(gè)圖所示。,創(chuàng)建,JSP,頁(4),(,6,)在,index.jsp,頁加入如下代碼:,(,7,)保存編輯好,JSP,頁,至此,完成一個(gè)簡單的,JSP,應(yīng)用程序的創(chuàng)建。,部署,JSP,程序(1),完成,JSP,應(yīng)用程序的創(chuàng)建后,就可以運(yùn)行,JSP,程序了。運(yùn)行,JSP,程序的具體步驟如下:,(,1,)在,Eclipse3.4,開發(fā)工具中,依次單擊菜單項(xiàng)中的,“,Run”,“Run As”,“Run on Server”,命令,如下圖所示。,部署,JSP,程序(2),(,2,)在彈出的,“,Run On Server”,對(duì)話框中,選擇,“,Tomcat 6.0”,服務(wù)器,如下圖所示。,(,3,)單擊,“,完成,”,按鈕,將啟動(dòng),Tomcat,服務(wù)器。,部署,JSP,程序(3),(,4,)打開,“,IE”,瀏覽器,在地址欄輸入,“,http:/localhost:8080/sanyang/”,地址,訪問,sanyang,應(yīng)用,運(yùn)行結(jié)果如下圖所示。,

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!