《第一章 Web應(yīng)用程序-概述》由會(huì)員分享,可在線閱讀,更多相關(guān)《第一章 Web應(yīng)用程序-概述(28頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,第一章,Web,應(yīng)用程序,概述,本章目標(biāo),描述,Web,應(yīng)用程序多級(jí)架構(gòu)視圖,回顧,HTTP,協(xié)議,描述典型,Web,應(yīng)用程序的結(jié)構(gòu),描述,Web,開發(fā)過程,2,桌面應(yīng)用程序,2-1,Windows,媒體播放器,用戶選擇一個(gè),MP3,文件,媒體播放器播放,MP3,文件,用 戶,3,桌面應(yīng)用程序,2-2,用戶,Windows,媒體播放器,請(qǐng)求,=,選擇要播放的文件,用戶發(fā)送一個(gè)請(qǐng)求,播放器發(fā)送一個(gè)響應(yīng),響應(yīng),=,媒體播放器播放選定的文件,媒體播放器是桌面應(yīng)用程序的一個(gè)示例,4,實(shí)現(xiàn)手機(jī)號(hào)碼歸屬地查詢,3,-,
2、1,方式,1,:手機(jī)號(hào)碼歸屬地查詢軟件 免費(fèi)版,6.1.8.0808,5,實(shí)現(xiàn)手機(jī)號(hào)碼歸屬地查詢,3,-,2,方式,1,:手機(jī)號(hào)碼歸屬地查詢軟件 免費(fèi)版,6.1.8.0808,6,實(shí)現(xiàn)手機(jī)號(hào)碼歸屬地查詢,3,-,3,方式,2.,網(wǎng)站:,http:/,7,應(yīng)用程序體系結(jié)構(gòu),軟件應(yīng)用程序組件,-,表示邏輯,-,業(yè)務(wù)邏輯,-,數(shù)據(jù)存取邏輯,體系結(jié)構(gòu)的類型,-,一層,-,二層,-,三層,數(shù)據(jù)存取,業(yè)務(wù),表示,數(shù)據(jù)存取,業(yè)務(wù),表示,8,軟件系統(tǒng)體系結(jié)構(gòu),兩層,(C/S,結(jié)構(gòu),):,(,Client/Server,)結(jié)構(gòu),即大家熟知的客戶機(jī)和服務(wù)器結(jié)構(gòu)(一般指數(shù)據(jù)庫服務(wù)器,),。,一般建立在專用的網(wǎng)絡(luò)上,
3、小范圍里的網(wǎng)絡(luò)環(huán)境。在這種結(jié)構(gòu)下通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到,Client,端和,Server,端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。,1,、數(shù)據(jù)庫服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較輕,2,、數(shù)據(jù)的儲(chǔ)存管理功能較為透明,3,、操作方便,反映速度快,4,、,C/S,架構(gòu)的劣勢(shì)是高昂的維護(hù)成本。,如業(yè)務(wù)邏輯變化,需要更新所有的客戶機(jī)的程序,9,軟件系統(tǒng)體系結(jié)構(gòu),三層,(B/S,結(jié)構(gòu),),B/S,(,Browser/Server,)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著,Internet,技術(shù)的興起,對(duì),C/S,結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過,WWW,瀏覽器來實(shí)現(xiàn),
4、極少部分事務(wù)邏輯在前端(,Browser,)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(,Server,)實(shí)現(xiàn),形成所謂三層結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本。,1,、維護(hù)和升級(jí)方式簡(jiǎn)單,2,、成本降低,選擇更多,3,、應(yīng)用服務(wù)器運(yùn)行數(shù)據(jù)負(fù)荷較重。,需要專門的服務(wù)器處理業(yè)務(wù)邏輯,即業(yè)務(wù)層。瀏覽器只是顯示而已,即表示層,10,開發(fā)工具:,1.C/S,C/S,的開發(fā)工具一般包括,C/C+,、,VB,、,VC,、,Delphi,、,Pb,、,VB,、,BCB,、,C#,2.B/S,B/S,的開發(fā)工具一般是,JSP,、,ASP,、,PHP,、,ASP.
5、Net,11,特殊,Delphi,開發(fā),12,Web,應(yīng)用程序體系結(jié)構(gòu),Web,應(yīng)用程序使用三層體系結(jié)構(gòu),表示層,客戶端,業(yè)務(wù)層,Web,服務(wù)器,數(shù)據(jù)庫,數(shù)據(jù)層,13,HTTP,協(xié)議,3-1,獲取文件,HTTP,獲取圖像,/bar01.jpg,HTTP/1.1,HTTP/1.1 200 OK,收到的文件,超文本傳輸協(xié)議,無狀態(tài)協(xié)議,用于通過,Internet,發(fā)送請(qǐng)求消息和響應(yīng)消息,使用端口接收和發(fā)送消息,默認(rèn)為,80,端口,14,HTTP,消息包括:,請(qǐng)求,響應(yīng),HTTP,協(xié)議,3-2,請(qǐng)求消息,請(qǐng)求行,標(biāo)題信息,方法,資源名稱,版本,GET/POST,bar01.jpg,HTTP/1.1,
6、瀏覽器類型,內(nèi)容類型,User-Agent,:Mozilla/4.0(,compatible;,MSIE 4.0,:,Windows 95,Accept:image/gif,image/jpeg,text/*,*/*,響應(yīng)消息,狀態(tài)行,標(biāo)題信息,版本,狀態(tài)代碼,說明,HTTP/1.1,200,OK,服務(wù)器軟件,修改日期,大小,(字節(jié)),內(nèi)容類型,Server:,JavaWebServer,Last modified:Tuesday,07-Sep-04 1:14:34 GMT,Content-length:100,Content-type:text/plain,15,HTTP,協(xié)議,3-3,HT
7、TP,協(xié)議使用以下方法發(fā)送請(qǐng)求信息:,GET,方法,POST,方法,GET,方法,用于檢索信息(如文檔、圖表或數(shù)據(jù)庫請(qǐng)求結(jié)果),請(qǐng)求的頁面可以被設(shè)置為書簽和使用電子郵件發(fā)送,請(qǐng)求信息作為查詢字符串發(fā)送,查詢字符串,(,240,255,個(gè)字符),POST,方法,用于發(fā)送敏感信息(如信用卡號(hào))或要保存到數(shù)據(jù)庫中的信息,請(qǐng)求的頁面不能設(shè)置為書簽或不能通過電子郵件發(fā)送,發(fā)送的數(shù)據(jù)沒有大小限制,16,ASP,、,.Net,、,PHP,、,JSP,比較,技術(shù),ASP,ASP.net,PHP,JSP,倡導(dǎo)組織,Microsoft,Microsoft,Zend,SUN,性質(zhì),一種技術(shù),一種技術(shù),一種語言,一種
8、技術(shù),主要開發(fā)語言,VBScript,、,JScript,C#,、,VB.net,PHP,Java,主要服務(wù)器,IIS,IIS,IIS+PHP,Tomcat+JDK,Apache+PHP,Apache+Tomcat+JDK,Jboss,Weblogic,WebSphere,常用數(shù)據(jù)庫,MS SQL server,MS SQL server,MySQL,Oracle,MS Office Access,MS Office Access,MySQL,通過橋接可支持的數(shù)據(jù)庫,所有,所有,所有,所有,跨平臺(tái)運(yùn)行,不支持,否,是,是,編譯執(zhí)行,否,是,可以,是,組件擴(kuò)展,需手工注冊(cè),豐富,比較豐富,豐富,
9、多線程,不支持,支持,簡(jiǎn)單支持,支持,面向?qū)ο?支持一丁點(diǎn),支持,4.x/5.x,簡(jiǎn)單支持,,6.0,完美支持,支持,學(xué)習(xí)難易度,非常簡(jiǎn)單,稍難,簡(jiǎn)單,稍難,網(wǎng)上虛擬主機(jī)租用,非常便宜,便宜,非常便宜,稍貴,17,Web,應(yīng)用程序目錄結(jié)構(gòu),Web,應(yīng)用程序,HTML,文件,圖像,Servlet,JSP,頁面,JavaBean,Jar,文件,Applet,標(biāo)簽文件,標(biāo)簽庫描述符文件,部署描述器,.war,文件,文檔根目錄,Web,應(yīng)用程序目錄結(jié)構(gòu),index.html,login.jsp,contactus.jsp,ViewBooks.jsp,logo.jpg,book1.jpg,AddBook
10、.class,DeleteBook.class,mbase.jar,msqlserver.jar,msutil.jar,DisplayBook.tag,web.xml,books.tld,文檔根目錄,靜態(tài)文件,(html,images,),WEB-INF,JSP,類,庫,標(biāo)簽,.,tld,web.xml,18,利用,servlets,,,可以方便地:,獲取,顯式數(shù)據(jù)(,form,data,),獲取隱藏?cái)?shù)據(jù)(,HTTP request headers,),設(shè)置,狀態(tài)代碼,(HTTP status codes),和響應(yīng)頭,(HTTP response headers),使用,cookies,和,s
11、ession,在,不同的,servlet,之間共享數(shù)據(jù),記住不同請(qǐng)求之間的數(shù)據(jù),但是,利用,servlet,做,以下事情卻很痛苦:,使用,println,語句生成,HTML,文檔,維護(hù)所生產(chǎn)的,HTML,文檔,JSP,(,Java Server Page,),19,JSP,(,Java Server Page,),JSP(Java Server Pages),是服務(wù)器端的,腳本語言,,是一種在,HTTP,頁面中加入,Java,語言而生成動(dòng)態(tài)頁面的技術(shù):,加入了新的標(biāo)簽(,,,)。,JSP,是以,Java,和,Servlet,為基礎(chǔ)開發(fā)而成的動(dòng)態(tài)網(wǎng)頁生成技術(shù),它的底層實(shí)現(xiàn)是,Java,Servl
12、et,。,JSP,頁面由,HTML,代碼和嵌入其中的,Java,代碼所組成。服務(wù)器在頁面被客戶端所請(qǐng)求以后對(duì)這些,Java,代碼進(jìn)行處理,然后將生成的,HTML,頁面返回給客戶端的瀏覽器。,特點(diǎn):面向?qū)ο?、跨平臺(tái),和,Servlet,一樣穩(wěn)定,可以使用,Servlet,提供的,API,,,克服了,Servlet,的缺點(diǎn)。,應(yīng)用:一般和,JavaBeans,結(jié)合使用,從而將界面表現(xiàn)和業(yè)務(wù)邏輯分離。,20,JSP,的執(zhí)行過程,21,Web,應(yīng)用程序開發(fā)過程,設(shè)計(jì)目錄結(jié)構(gòu),編寫,Web,應(yīng)用程序代碼,編寫部署描述符,編譯代碼,將,Web,應(yīng)用程序打包,部署,Web,應(yīng)用程序,執(zhí)行,Web,應(yīng)用程序,
13、22,總結(jié),與桌面應(yīng)用程序相比,,Web,應(yīng)用程序易于維護(hù)、升級(jí)和部署,使用,GET,方法請(qǐng)求的頁面可以設(shè)置為書簽或通過電子郵件發(fā)送,發(fā)送信用卡號(hào)、密碼等敏感信息時(shí)使用,POST,方法,在三層體系結(jié)構(gòu)中,表示層不能與數(shù)據(jù)層直接交互,Web,應(yīng)用程序有其標(biāo)準(zhǔn)的目錄結(jié)構(gòu)和文件要求,23,運(yùn)行環(huán)境,1,.,JDK:,Java,應(yīng)用程序開發(fā)包,包含編譯運(yùn)行,Java,程序所需的工具包和開發(fā),Java,應(yīng)用程序所需的類函數(shù)庫。,2.,Tomcat:,解釋,JSP,網(wǎng)頁,并且回傳解釋過后的,JSP,網(wǎng)頁至用戶計(jì)算機(jī)的瀏覽器,。,24,1.Java,安裝配置,1).,安裝,Java,,雙擊,jdk-6u12
14、-windows-i586-p.exe,運(yùn)行,Java,安裝軟件,所有安裝選項(xiàng)默認(rèn)即可。,2).,配置,Java,環(huán)境變量:,右擊“我的電腦”,選擇“系統(tǒng)屬性”,再選擇“高級(jí)”選項(xiàng)卡,點(diǎn)擊“環(huán)境變量”按鈕,然后新建環(huán)境變量:,JAVA_HOME=C:Program FilesJavajdk1.6.0_12,CLASSPATH=.;%JAVA_HOME%,jre,lib (,如果有,則添加在后面,),編輯環(huán)境變量,PATH,,在,PATH,值后面添加,%JAVA_HOME%bin,3).,測(cè)試:在,cmd,中運(yùn)行:,java-version,,運(yùn)行結(jié)果將顯示,java,版本信息,說明安裝成功。,
15、25,2.Tomcat,安裝配置,將,apache-tomcat-6.0.18.zip,(綠色版本)解壓到,C,盤下,直接運(yùn)行,C:apache-tomcat-6.0.18,下的,bin,目錄中的,startup.bat,,即可啟動(dòng),tomcat,服務(wù)器。,(,退出,tomcat,:,bin,目錄下有一個(gè):,shutdown.bat,,運(yùn)行它,將關(guān)閉,Dos,窗口,),測(cè)試:在瀏覽器中運(yùn)行,http:/localhost:8080/,,如果顯示下圖,說明安裝成功。,26,3.,測(cè)試,1,在,C:apache-tomcat-6.0.18webappsROOT,目錄下,,建立一個(gè),test18.jsp,測(cè)試:在瀏覽器中運(yùn)行,http:/localhost:8080/test18.jsp,27,4.,測(cè)試,2,將,test2,目錄復(fù)制到,C:apache-tomcat-6.0.18webapps,目錄下,測(cè)試:在瀏覽器中運(yùn)行,http:/localhost:8080/test2/index.jsp,28,