第10章 基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序_第1頁
第10章 基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序_第2頁
第10章 基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序_第3頁
第10章 基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序_第4頁
第10章 基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫原理與應(yīng)用第十章——基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用本章課程的背景1.基于關(guān)系型數(shù)據(jù)庫的Web應(yīng)用程序是通過網(wǎng)絡(luò)訪問關(guān)系型數(shù)據(jù)庫的網(wǎng)絡(luò)應(yīng)用程序,它是傳統(tǒng)的關(guān)系數(shù)據(jù)庫和網(wǎng)絡(luò)技術(shù)相結(jié)合的產(chǎn)物。2.其產(chǎn)生使得關(guān)系型數(shù)據(jù)庫的體系結(jié)構(gòu)改變了單一的基于客戶機(jī)/服務(wù)器的C/S模式,產(chǎn)生了基于瀏覽器/服務(wù)器的B/S模式。課程難點(diǎn)與學(xué)習(xí)目的1.課程難點(diǎn):基于B/S架構(gòu)的關(guān)系型數(shù)據(jù)庫Web應(yīng)用程序開發(fā)模式;服務(wù)器端的動(dòng)態(tài)網(wǎng)頁技術(shù);基于XML的數(shù)據(jù)庫信息管理。2.學(xué)習(xí)目的:了解C/S、B/S架構(gòu);了解常見的Web服務(wù)器及服務(wù)器端的動(dòng)態(tài)網(wǎng)頁技術(shù);了解客戶端網(wǎng)頁設(shè)計(jì)的一般方法;了解XML技術(shù)。本章主要內(nèi)容1.基于B/S架構(gòu)的關(guān)系型數(shù)據(jù)庫2.Web應(yīng)用程序開發(fā)模式3.中間件4.常見的Web服務(wù)器5.服務(wù)器端的動(dòng)態(tài)網(wǎng)頁技術(shù)6.客戶端網(wǎng)頁設(shè)計(jì)相關(guān)技術(shù)7.基于XML的數(shù)據(jù)庫信息管理數(shù)據(jù)庫原理與應(yīng)用第十章——10.1數(shù)據(jù)庫應(yīng)用體系結(jié)構(gòu)概述分布計(jì)算的涵義1.處理分布,數(shù)據(jù)集中各節(jié)點(diǎn)上應(yīng)用程序向同一個(gè)數(shù)據(jù)庫存取數(shù)據(jù),然后在各自節(jié)點(diǎn)進(jìn)行相應(yīng)處理;是一種單點(diǎn)數(shù)據(jù)、多點(diǎn)處理的方式,屬集中式數(shù)據(jù)庫范疇。2.數(shù)據(jù)分布數(shù)據(jù)物理分布在計(jì)算機(jī)網(wǎng)絡(luò)的不同節(jié)點(diǎn)上,構(gòu)成一個(gè)邏輯數(shù)據(jù)庫。3.功能分布一些節(jié)點(diǎn)上的計(jì)算機(jī)專門用于執(zhí)行數(shù)據(jù)庫管理系統(tǒng)功能(數(shù)據(jù)庫服務(wù)器);另一些節(jié)點(diǎn)上的計(jì)算機(jī)則專門處理用戶應(yīng)用程序(客戶機(jī));主要技術(shù)特征:功能劃分;共享資源;不對(duì)稱協(xié)議;定位透明;基于消息的交換;具有可擴(kuò)展性。分布計(jì)算的涵義10.1.1基于C/S模式的體系結(jié)構(gòu)1.客戶機(jī):管理用戶界面、接收用戶數(shù)據(jù)、處理應(yīng)用邏輯、生成數(shù)據(jù)庫請求、向服務(wù)器發(fā)送數(shù)據(jù)庫請求、從服務(wù)器接收結(jié)果、格式化結(jié)果等。2.服務(wù)器:接收來自客戶機(jī)的數(shù)據(jù)庫請求、處理對(duì)數(shù)據(jù)庫的請求、格式化結(jié)果并傳給客戶機(jī)、進(jìn)行完整性檢查、維護(hù)數(shù)據(jù)字典和索引、處理數(shù)據(jù)恢復(fù)、優(yōu)化查詢/更新處理。10.1.1基于C/S模式的體系結(jié)構(gòu)3.中間件:中間件泛指客戶機(jī)和服務(wù)器之間的軟件,也稱操作系統(tǒng)的接口軟件。中間件可分為通用中間件和專用中間件。它連接兩個(gè)獨(dú)立應(yīng)用程序或獨(dú)立系統(tǒng)的軟件。相連接的系統(tǒng),即使它們具有不同的接口,也能通過中間件交換信息。通過中間件,應(yīng)用程序可以工作于多平臺(tái)或多OS環(huán)境。數(shù)據(jù)庫中間件:可提供基于SQL的異構(gòu)數(shù)據(jù)庫互連操作。優(yōu)點(diǎn):可以通過各種設(shè)備來方便地訪問數(shù)據(jù)庫,跨平臺(tái)操作。由HTML或XML充當(dāng)Web信息的組織方式,能統(tǒng)一和簡化軟件開發(fā)過程。一般來說,客戶端只需使用瀏覽器訪問數(shù)據(jù)庫,無須額外的客戶端軟件。10.1.2基于B/S模式的體系結(jié)構(gòu)客戶端、服務(wù)器端、數(shù)據(jù)庫端的關(guān)系當(dāng)Web服務(wù)器接收到客戶端請求后,將其傳遞給中間件進(jìn)行讀取、驗(yàn)證和執(zhí)行,之后將得到的內(nèi)容插入到Web頁的相應(yīng)位置中,并將這個(gè)創(chuàng)建好的動(dòng)態(tài)網(wǎng)頁發(fā)送到客戶端顯示。數(shù)據(jù)庫原理與應(yīng)用第十章——10.2常見的Web服務(wù)器簡介10.2常見的Web服務(wù)器簡介1.IISInternetInformationServices,是微軟提供的基于運(yùn)行MicrosoftWindows的互聯(lián)網(wǎng)基本服務(wù)。最初是WindowsNT版本的可選包,隨后內(nèi)置在Windows2000、WindowsXPProfessional和WindowsServer2003等一起發(fā)行。10.2常見的Web服務(wù)器簡介2.Tomcat免費(fèi)的開源的Web輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP程序的首選。當(dāng)在一臺(tái)機(jī)器上配置好Tomcat,可利用它響應(yīng)HTML頁面的訪問請求。10.2常見的Web服務(wù)器簡介3.Weblogic是BEA出品的基于J2EE架構(gòu)的中間件,用于開發(fā)、集成、部署和管理大型分布式Web應(yīng)用、網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)庫應(yīng)用的Java應(yīng)用服務(wù)器。它簡化了可移植及可擴(kuò)展的應(yīng)用系統(tǒng)的開發(fā),并為其他應(yīng)用系統(tǒng)提供了豐富的互操作性。數(shù)據(jù)庫原理與應(yīng)用第十章——10.3服務(wù)器端的動(dòng)態(tài)網(wǎng)頁技術(shù)1.靜態(tài)網(wǎng)頁:隨著html代碼的生成,頁面的內(nèi)容和顯示效果就基本上不會(huì)發(fā)生變化了,除非修改頁面代碼。2.動(dòng)態(tài)網(wǎng)頁:頁面代碼雖然沒有變,但是顯示的內(nèi)容卻是可以隨著時(shí)間、環(huán)境或者數(shù)據(jù)庫操作的結(jié)果而發(fā)生改變的。在通過動(dòng)態(tài)網(wǎng)頁技術(shù)(如ASP.NET、JSP、PHP等)連接后臺(tái)數(shù)據(jù)庫的過程中,一般會(huì)用到中間件進(jìn)行數(shù)據(jù)庫連接和數(shù)據(jù)管理。10.3服務(wù)器端的動(dòng)態(tài)網(wǎng)頁技術(shù)10.3.1JSPJSP基于Java技術(shù)的執(zhí)行于服務(wù)器端的用于創(chuàng)建可支持跨平臺(tái)及Web服務(wù)器的技術(shù)。由HTML語句和特殊的嵌入標(biāo)記組成,每個(gè)JSP程序都是先編譯成Servlet后由Java虛擬機(jī)解釋執(zhí)行的。在Servlet和JavaBean的支持下,協(xié)助完成Web應(yīng)用程序的開發(fā)。組成部分:靜態(tài)HTML代碼:可對(duì)標(biāo)題、字體、字號(hào)等進(jìn)行設(shè)定。動(dòng)態(tài)的Java代碼以及自身的標(biāo)簽和指令:JSP把Java代碼嵌套到HTML中,Web容器根據(jù)這些動(dòng)態(tài)代碼的運(yùn)行結(jié)果生成對(duì)應(yīng)的HTML代碼,從而可以在客戶端的瀏覽器中正常顯示。JSP頁面內(nèi)置腳本語言是基于Java的,擁有

“一次編寫各處運(yùn)行”特點(diǎn),所有JSP頁面被編譯成為JavaServletJSP包括的元素JSP包括腳本元素、JSP指令、JSP動(dòng)作JSP指令標(biāo)簽:提供了有關(guān)JSP頁面到JSP引摯的信息,類型是page、include和taglib(以<%@開始,并用%>結(jié)束的指令)JSP動(dòng)作標(biāo)簽:由JSP引擎在請求的處理階段處理的,包括Include、Forward、UseBean、GetProperty、SetProperty、Plugin等。JSP指令標(biāo)簽:設(shè)定JSP頁面的相關(guān)屬性,如page指令標(biāo)簽(用來定義JSP頁面的全局屬性,如編碼、錯(cuò)誤頁面等)、include指令(用于在當(dāng)前JSP頁面中包含一個(gè)文件從而和當(dāng)前頁面組成一個(gè)整體)等。JSP的指令標(biāo)簽Page指令標(biāo)簽1.定義JSP整個(gè)頁面的一些屬性的值,慣常將其放在JSP程序的頂端。2.除import屬性外,其他屬性只能指定一個(gè)值,如需為import指定多個(gè)值,這些值可用逗號(hào)隔開:<%@page屬性1=“屬性1的值”,屬性2= “屬性2的值”……%>Page指令標(biāo)簽3.contentType:設(shè)置JSP應(yīng)答頁面的字符編碼4.pageEncoding:設(shè)置當(dāng)前JSP頁面的編碼格式<%@pagelanguage=“java”import=“java.util.*”pageEncoding=“gb2312”%>

5.其他標(biāo)簽charset:設(shè)定字符集<%@pagecontentType="text/html;charset=gb2312"%>extends:定義此JSP頁`面產(chǎn)生的Servlet是繼承自哪個(gè)父類session:指明JSP頁面是否需要一個(gè)HTTP會(huì)話authflush:決定輸出流的緩沖區(qū)是否要自動(dòng)清除Include指令標(biāo)簽用include指令嵌入的文件,在當(dāng)前JSP頁面編譯時(shí)加載到當(dāng)前頁面,include指令指定的文件將被插入到include指令所在的位置,最終產(chǎn)生的servlet將兩個(gè)文件結(jié)合在一起輸出在一個(gè)JSP頁面中。<%@includefile=“文件名”%>JSP動(dòng)作標(biāo)簽動(dòng)作標(biāo)簽影響JSP運(yùn)行時(shí)的動(dòng)作,包括:include動(dòng)作標(biāo)簽、param動(dòng)作標(biāo)簽、forward動(dòng)作標(biāo)簽、plugin動(dòng)作標(biāo)簽、useBeas動(dòng)作標(biāo)簽等。forward動(dòng)作是將請求跳轉(zhuǎn)到另一個(gè)程序如JSP頁面等:

<jsp:forwardpage=”url”/>,

JSP中通過JDBC與數(shù)據(jù)庫建立連接1.根據(jù)提供的驅(qū)動(dòng)程序名加載對(duì)應(yīng)的數(shù)據(jù)庫驅(qū)動(dòng)程序2.根據(jù)連接字符串,從DriveManager中取得與數(shù)據(jù)庫的連接。3.在取得的Connection數(shù)據(jù)庫對(duì)象基礎(chǔ)上進(jìn)行各種數(shù)據(jù)操作JDBC提供了Statement類來發(fā)送SQL語句,Statement類的對(duì)象用createStatement方法創(chuàng)建,而返回的結(jié)果通常存放在一個(gè)ResultSet類的對(duì)象中。10.3.2基于ASP.NET構(gòu)建Web程序ASP.NET創(chuàng)建基于VisualC#的數(shù)據(jù)庫Web應(yīng)用程序。數(shù)據(jù)控件分為數(shù)據(jù)源控件和數(shù)據(jù)綁定控件數(shù)據(jù)源控件主要用于連接不同的數(shù)據(jù)源、完成數(shù)據(jù)檢索和數(shù)據(jù)操縱。數(shù)據(jù)綁定控件主要用于將通過數(shù)據(jù)源控件獲取的數(shù)據(jù)以某種形式顯示在Web頁面上。數(shù)據(jù)庫原理與應(yīng)用第十章——10.4客戶端網(wǎng)頁設(shè)計(jì)相關(guān)技術(shù)簡介10.4客戶端網(wǎng)頁設(shè)計(jì)相關(guān)技術(shù)1.基于CSS+DIV構(gòu)建網(wǎng)頁DIV元素用來為HTML文檔內(nèi)大塊內(nèi)容提供結(jié)構(gòu)和背景的元素。CSS重新定義了HTML中原來的文字顯示樣式,并增加了一些新的概念(如層、類等),還可以處理文字重疊、定位等,同時(shí)還可以進(jìn)行樣式的集中管理,允許將樣式定義單獨(dú)存儲(chǔ)于CSS文件中,把顯示的內(nèi)容和樣式的定義分離,便于多個(gè)HTML文件共享同樣的版面布局。2客戶端腳本語言JavaScript將JavaScript寫入到Web頁面當(dāng)中,能使得原來靜態(tài)的Web頁面增加許多炫麗的效果,并使得網(wǎng)頁的表現(xiàn)形式更加生動(dòng)活潑。DHTML就是JavaScript和CSS在網(wǎng)頁上的組合應(yīng)用。不少JavaScript庫可以方便地應(yīng)用到現(xiàn)有開發(fā)體系中,它們不僅為大部分日常的DOM腳本編程工作提供了快捷的解決方案,也提供了許多獨(dú)特的工具。常用的JavaScript庫有jQuery等。數(shù)據(jù)庫原理與應(yīng)用第十章——10.5基于XML的數(shù)據(jù)庫信息管理10.5基于XML的數(shù)據(jù)庫信息管理1.XML主要用于定義數(shù)據(jù)本身結(jié)構(gòu)和數(shù)據(jù)類型,而不是用于描述如何顯示數(shù)據(jù)或文本的。2.由于XML將數(shù)據(jù)與顯示分離,使得集成來自不同信息源的數(shù)據(jù)成為可能。3.XML使用一組用戶可自定義的標(biāo)記來描繪數(shù)據(jù)元素,每個(gè)元素封裝可能十分簡單或十分復(fù)雜的數(shù)據(jù)。常見的XML應(yīng)用1.存放數(shù)據(jù),然后由XSLT將XML解析轉(zhuǎn)換為HT

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論