《服務(wù)器端開發(fā)技術(shù)》ppt課件_第1頁
《服務(wù)器端開發(fā)技術(shù)》ppt課件_第2頁
《服務(wù)器端開發(fā)技術(shù)》ppt課件_第3頁
《服務(wù)器端開發(fā)技術(shù)》ppt課件_第4頁
《服務(wù)器端開發(fā)技術(shù)》ppt課件_第5頁
已閱讀5頁,還剩96頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、9.1 B/S 體系構(gòu)造中數(shù)據(jù)庫接口技術(shù)9.2 ASP技術(shù) 9.3 數(shù)據(jù)庫訪問組件ADO9.4 習(xí)題 u9.1.1 CGICommon Gateway InterfaceuCGI即通用網(wǎng)關(guān)接口,是早期建立運(yùn)用程序與Web效力器之間接口的規(guī)范,其任務(wù)方式是:用戶經(jīng)過閱讀器用HTTP以Form表單向Web效力器發(fā)出懇求;Web效力器接納用戶的懇求,用一個(gè)子進(jìn)程啟動(dòng)CGI,將用戶的懇求傳給CGI;CGI向數(shù)據(jù)庫效力器發(fā)出懇求,數(shù)據(jù)庫效力器執(zhí)行相應(yīng)的查詢操作;數(shù)據(jù)庫效力器將效力懇求前往給CGI;CGI將查詢結(jié)果轉(zhuǎn)換成網(wǎng)頁方式前往給Web效力器,Web效力器再經(jīng)過HTTP將網(wǎng)頁傳給用戶的閱讀器顯示出來,

2、其任務(wù)表示圖如圖9-1所示:u9.1.1 CGICommon Gateway Interface圖9-1u9.1.1 CGICommon Gateway InterfaceuCGI的功能是在超文本文件與Web效力器運(yùn)用程序之間傳送信息。uCGI程序可用Visual Basic、C、C+、和Perl等言語來編寫。uCGI的跨平臺(tái)性能極佳,幾乎可以不加任何修正即可移植到絕大多數(shù)操作系統(tǒng)上。但其缺陷是運(yùn)轉(zhuǎn)速度慢。uCGI交互性差,由于HTTP協(xié)議無形狀限制,CGI不能堅(jiān)持當(dāng)前形狀,所以短少交互性。u最后由于只需來訪就可執(zhí)行CGI,所以平安性差。u9.1.2 效力器APIu目前最流行的兩種API分別是

3、Microsoft的ISAPIInternet Server Application Program Interface和Netscape的NSAPINetscape Server Application Program Interface。這兩種接口可讓程序設(shè)計(jì)人員以規(guī)范方式編寫Web效力器交互的運(yùn)用程序。目前Netscape宣布其NSAPI也支持ISAPI規(guī)范,那么意味著只需一種Web API規(guī)范了。uISAPI由兩類組件組成:提供縱向功能層的ISAPI運(yùn)用程序和提供橫向功能層的ISAPI過濾器。u9.1.2 效力器APIu用ISAPI編制的程序以動(dòng)態(tài)銜接庫DLL的方式存在,可實(shí)現(xiàn)CGI所

4、能提供的全部功能,二者的任務(wù)原理大體一樣,都是經(jīng)過交互式主頁獲得用戶輸入信息,然后交給效力器后臺(tái)處置。u二者的區(qū)別在于:在ISAPI下建立的運(yùn)用程序都是以DLL方式存在,而CGI的運(yùn)用程序普通為可執(zhí)行文件。在ISAPI調(diào)用方式中,被用戶激活的DLL和Web效力處于同一進(jìn)程中,在處置完某用戶的懇求后不會(huì)馬上消逝,而是和Web效力器一同繼續(xù)駐留在內(nèi)存中,等待其他用戶的HTTP懇求,直到過了指定的時(shí)間仍直無用戶輸入為止。由于ISAPI的一切進(jìn)程都可獲得HTTP Server上的任何資源,而且當(dāng)它調(diào)用外部CGI Script時(shí)需求的開銷也較單純的CGI少,所以ISAPI的運(yùn)轉(zhuǎn)效率顯著高于CGI程序。效

5、力器API的任務(wù)表示圖如圖9-2所示:u9.1.2 效力器API圖9-2u9.1.3 ASPu由于效力器API開發(fā)的難度大,于是微軟推出ASPActive Service Pages,即動(dòng)態(tài)效力器網(wǎng)頁技術(shù),用以取代CGI技術(shù)。uASP是開放式Web效力器運(yùn)用程序開發(fā)技術(shù),它既不是一種編程言語,也不是一種開發(fā)工具,而是一種效力器端的腳本運(yùn)轉(zhuǎn)環(huán)境。uASP的主要功能是生成動(dòng)態(tài)、交互式的高效Web效力器運(yùn)用程序。它可以把腳本、HTML、組件和數(shù)據(jù)庫訪問功能結(jié)合在一同,構(gòu)成一個(gè)在效力器端運(yùn)轉(zhuǎn)的運(yùn)用程序,并按用戶懇求,把結(jié)果轉(zhuǎn)換成規(guī)范的HTML頁面前往客戶端。ASP經(jīng)過ADO訪問數(shù)據(jù)庫。ASP運(yùn)用腳本言

6、語進(jìn)展ASP程序的開發(fā),本身提供VBScript和JavaScript兩種腳本引擎,缺省為VBScript。ASP任務(wù)表示圖如圖9-3所示。u9.1.3 ASP圖9-3u9.2.1 ASP的運(yùn)轉(zhuǎn)環(huán)境uASP的運(yùn)轉(zhuǎn)需求效力器來解釋。微軟推出的效力器是uMicrosoft Internet Information Server version 3.0/4.0/5.0 on Windows NT/2000 Server即IIS3.0/4.0/5.0。uMicrosoft Personal Web Server on Windows 95/98即PWS 。u9.2.2 ASP的任務(wù)流程uASP程序是以

7、.asp為擴(kuò)展名的文本文件,其控制部分是用VBScript或JavaScript等腳本言語來編寫的。一個(gè)ASP文件相當(dāng)于一個(gè)可執(zhí)行文件,因此必需放在Web效力器上有可執(zhí)行權(quán)限的目錄下。uASP程序只能在Web效力器端執(zhí)行,當(dāng)閱讀器向Web效力器懇求調(diào)用ASP文件時(shí),就啟動(dòng)了ASP。Web效力器呼應(yīng)該HTTP懇求,調(diào)用ASP引擎,解釋被懇求的文件。當(dāng)遇到與ActiveX Script兼容的腳本VBScript,JavaScript時(shí),ASP引擎調(diào)用相應(yīng)的腳本引擎進(jìn)展解釋處置。假設(shè)腳本指令中涉及到對(duì)數(shù)據(jù)庫的訪問,就調(diào)用ADO組件與后臺(tái)數(shù)據(jù)庫進(jìn)展銜接,并將執(zhí)行結(jié)果動(dòng)態(tài)生成一個(gè)HTML頁面前往Web效

8、力器端,然后與頁面中非腳本的HTML合并成一個(gè)完好的HTML頁面送至客戶端閱讀器。ASP的任務(wù)流程如圖9-4所示:u9.2.2 ASP的任務(wù)流程數(shù)據(jù)庫Web服務(wù)器ADOJavaScriptVBScript(ActiveX腳本引擎)瀏覽器HTTP響應(yīng)HTTP請求ASP文件圖9-4u9.2.3 ASP文件的構(gòu)造u任何可以放在HTML中的東西Java applets、VBScript或者JavaScript等腳本言語、ActiveX控件等都可以放入ASP中;ASP還提供了內(nèi)置對(duì)象,可以運(yùn)用許多附加的組件,這大大擴(kuò)展了ASP的功能。uVBScript是ASP的默許腳本程序引擎,除了VBScript,A

9、SP也允許網(wǎng)頁編寫者運(yùn)用其他熟習(xí)的言語。uASP的腳本言語代碼可以放在程序的任何位置,只需用標(biāo)志將其括起來即可,且不須事先闡明。u9.2.3 ASP文件的構(gòu)造u普通一個(gè)ASP文件可以包含以下四個(gè)部分:u普通HTML文件,普通Web頁面的編程。u客戶端腳本程序代碼,通常用和定界符括起來。u效力器端ASP腳本程序代碼,用“ 定界符括起來。uServer_SideInclude語句,運(yùn)用#INCLUDE語句在Web頁面中嵌入其他Web頁面,其中“是規(guī)范的ASP定界符,而和是客戶端腳本或效力器端腳本的定界符。u9.2.3 ASP文件的構(gòu)造u一【例9-1】ASP程序?qū)嵗齝hap9-1.asp:以不同的字

10、體輸出“Welcome!。u u ASP程序?qū)嵗齯 u u Font Size=u u u u u u u9.2.3 ASP文件的構(gòu)造u以上程序可以用文本編輯器Notepad或公用開發(fā)工具Visual InterDev 6.0來輸入,并將其放在Web效力器的虛擬目錄下,然后在閱讀器的地址欄中輸入httplocalhostchap9-1.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-5所示: 圖9-5u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uASP的內(nèi)置對(duì)象如表9-1所示:內(nèi)置對(duì)象功 能Request從閱讀器用戶端發(fā)送到效力器端的一切信息Response將HTML和各種其他信息前往到用戶端閱讀器Server為ASP的

11、運(yùn)用程序提供效力器的功能Session在此對(duì)象中維護(hù)每個(gè)用戶的信息Application對(duì)給定運(yùn)用程序的一切用戶共享信息ObjectContext提供分布式事務(wù)處置ASPError獲取發(fā)生在ASP頁面中的錯(cuò)誤信息u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uASP的內(nèi)置組件如表9-2所示:內(nèi)置對(duì)象功 能Request從閱讀器用戶端發(fā)送到效力器端的一切信息Response將HTML和各種其他信息前往到用戶端閱讀器Server為ASP的運(yùn)用程序提供效力器的功能Session在此對(duì)象中維護(hù)每個(gè)用戶的信息Application對(duì)給定運(yùn)用程序的一切用戶共享信息ObjectContext提供分布式事務(wù)處置AS

12、PError獲取發(fā)生在ASP頁面中的錯(cuò)誤信息u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u1Request對(duì)象u- Request對(duì)象用于訪問用HTTP懇求傳送的信息,也就是客戶在懇求頁面或提交表單時(shí)提供的一切信息。u- 通常來說,Request對(duì)象所得到的信息是從閱讀器傳送給效力器的,傳送的方式有兩種:Get和PostRequest對(duì)象包括五個(gè)數(shù)據(jù)集合、一個(gè)屬性和一個(gè)方法。Request對(duì)象的語法格式為:u Request.數(shù)據(jù)集合|屬性|方法(變量)u Request擁有以下五個(gè)數(shù)據(jù)集合,分別是:uForm:獲得客戶端表格元素中所填入的信息。uQueryString:取回URL懇求字符串。uC

13、ookies:獲得客戶端閱讀器的Cookies值。uServerVariable:獲得效力器端環(huán)境變量的值。uClientCertificate:從客戶端獲得身份驗(yàn)證的信息。 u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(1)Form數(shù)據(jù)集合u- 在ASP Web頁面上,可以運(yùn)用Request對(duì)象的Form集合搜集來自客戶端的以表單方式發(fā)往效力器的信息。u- 語法格式為:u Request.Form(String參數(shù))(索引.計(jì)數(shù))u 其中,String參數(shù)是用來指定集合要檢索的表格元素稱號(hào)如:Text,Radio等。索引是一個(gè)可選的參數(shù),可以獲得Form下稱號(hào)一樣的表格元素,它的值是由0Req

14、uest.Form(String參數(shù)).Count之間的恣意整數(shù)。Request.Form(String參數(shù)).Count屬性值代表一切稱號(hào)一樣的表格元素的數(shù)目,假設(shè)不存在稱號(hào)一樣的表格元素其前往值為1,假設(shè)該表格元素不存在那么前往值為0。需求留意的是Form集合對(duì)應(yīng)的方法為Post,而QueryString集合對(duì)應(yīng)的方法為Get。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-2】Form數(shù)據(jù)集合運(yùn)用實(shí)例,從客戶端獲取表單信息。u客戶端腳本程序chap9-2.html代碼如下,運(yùn)轉(zhuǎn)結(jié)果如圖9-6所示:u Form數(shù)據(jù)集合演示實(shí)例客戶端程序 u u u 系統(tǒng)登錄u u 用戶稱號(hào)u 登錄密碼u

15、 u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-6u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u當(dāng)單擊“登錄按鈕以后,由chap9-3.asp程序讀取表單中的數(shù)據(jù)。u效力器端腳本程序chap9-3.asp代碼如下,運(yùn)轉(zhuǎn)結(jié)果如圖9-7所示:u u Form數(shù)據(jù)集合演示實(shí)例效力器端程序u u 用戶稱號(hào):u 用戶密碼:u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-7u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2)QueryString數(shù)據(jù)集合uQueryString集合的功能就是從查詢字符串中讀取用戶提交的數(shù)據(jù)。普通來講,查詢字符串變量直接定義在超級(jí)鏈接的URL中,即接在“?字符之后。例如:

16、ex/query.asp?txtusername=sau語法格式為:Request.QueryString(變量稱號(hào))(索引.計(jì)數(shù))u其中,索引是一個(gè)任選的參數(shù),可以獲得“?字符后稱號(hào)一樣的變量名,而且在“?字符之后還可以用符號(hào)“&來銜接兩個(gè)不同的參數(shù)。例如:ex/answer.asp?Y=yes&N=nou計(jì)數(shù)是一個(gè)整數(shù),是從0Request.QueryString(變量稱號(hào)).Count的恣意值。 Request.QueryString(變量稱號(hào)).Count表示一切稱號(hào)一樣的變量數(shù),假設(shè)不存在稱號(hào)一樣的變量,其值為1,假設(shè)該變量不存在,其值為0 。u9.2.4 ASP的內(nèi)

17、置對(duì)象和運(yùn)用組件u【例9-3】QueryString數(shù)據(jù)集合運(yùn)用實(shí)例chap9-4.asp,獲取客戶端信息。運(yùn)轉(zhuǎn)此程序時(shí),留意在閱讀器的地址欄中輸入:localhost/chap9-4.asp?QS=歡迎登錄本站點(diǎn)。運(yùn)轉(zhuǎn)結(jié)果如圖9-8所示 :u u QueryString數(shù)據(jù)集合演示實(shí)例u u %For Each Item In Request.Querystring(QS)u Response.Write Item & u Next%u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-8u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(3) ServerVariables數(shù)據(jù)集合uSer

18、verVariables數(shù)據(jù)集合可用于提供有關(guān)隨HTTP懇求一同傳送的HTTP頭信息。u語法格式為:u Request.ServerVariables(效力器環(huán)境變量)u效力器環(huán)境變量是只讀變量,只能查閱,不能設(shè)置。u效力器環(huán)境變量如教材中表9-3所示:u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-4】ServerVariables 數(shù)據(jù)集合運(yùn)用實(shí)例chap9-5.asp,只需從http localhost/index.asp銜接過來的才被允許訪問。運(yùn)轉(zhuǎn)結(jié)果如圖9-9所示(此處省略圖顯示:u u Servervariables數(shù)據(jù)集合演示實(shí)例u u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用

19、組件u(4)ClientCertificate數(shù)據(jù)集合uClientCertificate數(shù)據(jù)集合從閱讀器發(fā)出的懇求中獲取認(rèn)證字段。普通情況下,IIS和PWS都默以為不向客戶端要求身份驗(yàn)證的命令。u語法格式為:Request.ClientCertificate(KeySubField)u Key:指定要獲取的驗(yàn)證字段稱號(hào)。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u涉及到的關(guān)鍵字如表9-4所示:關(guān) 鍵 字含義描畫Subject包含了運(yùn)用證書的客戶信息Issuers包含可信任的第三方的有關(guān)信息ValidFrom證書有效的起始時(shí)間ValidUntil證書有效的終止時(shí)間SerialNumber一個(gè)包含

20、認(rèn)證的串行數(shù)字的字符串,由四組十六進(jìn)制ASCII碼表示Certificate一個(gè)包含整個(gè)認(rèn)證信息的二進(jìn)制流的字符串Flags提供其他額外的身份驗(yàn)證信息的標(biāo)識(shí)u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uSubfield:可選參數(shù),用于按Subject或Issuers關(guān)鍵字檢索單獨(dú)的字段。附屬參數(shù)如表9-5所示:子參數(shù)意 義C指定國家的稱號(hào)O指定公司或組織的稱號(hào)OU指定組織部門的稱號(hào) CN指定客戶端的普通稱號(hào)L指定客戶端的位置S指定州名或省名T指定個(gè)人的職位頭銜GN指定姓名的名I指定姓名的姓u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(5) Cookies數(shù)據(jù)集合uCookies數(shù)據(jù)集合是用來記錄客戶

21、端信息的,當(dāng)訪問一個(gè)需求獨(dú)一標(biāo)識(shí)地址的Web站點(diǎn)時(shí),它會(huì)在硬盤上留下一個(gè)標(biāo)志,下一次當(dāng)訪問同一個(gè)站點(diǎn)時(shí),站點(diǎn)的頁面會(huì)查找這個(gè)標(biāo)志。每個(gè)Web站點(diǎn)都有本人的標(biāo)志,標(biāo)志的內(nèi)容可以隨時(shí)讀取,但只能由該站點(diǎn)的頁面完成。u語法格式:Request.Cookies(String)(Key)|.Attributeu 其中,參數(shù)String指要檢索其值的Cookie。u Key為可選參數(shù),用于從Cookies字典中檢索子關(guān)鍵字的值。u Attribute屬性指定Cookies本身的有關(guān)信息。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uAttribute參數(shù)見表9-6所示 :屬 性說 明Domain 只寫,假設(shè)被

22、指定,那么Cookie將被發(fā)送到對(duì)該域的懇求中去Expires只寫,指定Cookie的過期日期。為了在會(huì)話終了后將Cookie存儲(chǔ)在客戶的磁盤上,必需設(shè)置該日期。假設(shè)此項(xiàng)屬性的設(shè)置未超越當(dāng)前日期,那么在義務(wù)終了后Cookie將到期HasKeys只讀,確定Cookie能否包含多個(gè)關(guān)鍵字。假設(shè)包含多個(gè),那么HasKeys前往True,否那么為FalsePath只寫,假設(shè)被指定,那么Cookie將只發(fā)送到對(duì)該途徑的懇求中。假設(shè)未設(shè)置該屬性,那么運(yùn)用運(yùn)用程序的途徑Secure 只寫。設(shè)置該Cookie的平安性u(píng)9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-5】假設(shè)建立了一個(gè)名為BookCookies

23、的Cookies字典,代碼如下:u Response.Cookies(“ BookCookies)(“ SF ) =“數(shù)學(xué)分析u Response.Cookies(“ BookCookies)(“XD) =“線性代數(shù)u Response.Cookies(BookCookies )(GS) =高等數(shù)學(xué)u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u運(yùn)用實(shí)例chap9-6.asp:運(yùn)用Cookies數(shù)據(jù)集合讀取BookCookies字典的值,代碼如下: u u % For Each Cookie In Request.Cookiesu If Not Request.Cookies(Cookie).Has

24、keys Thenu Response.Write&Cookie&= &Request.Cookies(Cookie)u Else u Response.Write“&Cookie&“包含以下鍵值:u For Each Key In Request.Cookies(Cookie)u Response.Write&Key&=&Request.Cookies(Cookie)(Key) u Nextu End Ifu Next %u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(6)Request對(duì)象的屬性u(píng)Request對(duì)象只需一個(gè)屬性

25、:TotalBytes屬性。該屬性是一個(gè)只讀屬性,可取回客戶端呼應(yīng)數(shù)據(jù)的字節(jié)數(shù)。語法格式為:counter=Request.TotalBytesu其中counter變量會(huì)取回客戶端送回的數(shù)據(jù)字節(jié)大小,本屬性普通與BinaryRead方法配合運(yùn)用。u(7)Request對(duì)象的方法uRequest對(duì)象只需一個(gè)方法:BinaryRead方法,語法格式為:Variant=Request.BinaryRead(counter)u其中,counter變量是利用TotalBytes屬性取回客戶端送回的數(shù)據(jù)字節(jié)大小。u留意:該方法與Request.Form方法合用能夠會(huì)呵斥執(zhí)行上的錯(cuò)誤。u9.2.4 ASP的

26、內(nèi)置對(duì)象和運(yùn)用組件u2Response對(duì)象 uResponse對(duì)象的功能與Request對(duì)象的功能正好相反,用于向客戶端閱讀器發(fā)送信息,從而經(jīng)過腳本代碼中的HTTP變量識(shí)別效力器及其容量、發(fā)送到客戶端的有關(guān)信息及該范圍內(nèi)將要保管到客戶端閱讀器中的一些新的Cookie。該對(duì)象與Request對(duì)象相互配合,可以實(shí)現(xiàn)效力器端和閱讀器端的數(shù)據(jù)傳輸,這是網(wǎng)頁實(shí)現(xiàn)動(dòng)態(tài)功能的根底。uResponse對(duì)象的語法格式為:u Response.數(shù)據(jù)集合|屬性|方法u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(1) Response對(duì)象的數(shù)據(jù)集合uCookies是Response對(duì)象中獨(dú)一的數(shù)據(jù)集合。運(yùn)用Cookie

27、s可以設(shè)置客戶端閱讀器內(nèi)的Cookie值。Cookie的語法格式為:Response.Cookies(Var)(Key)|.Attribute=Cookie值u這里,Var代表Cookie的稱號(hào)。假設(shè)指定了Key,那么該Cookie就是一個(gè)字典。Attribute指定Cookie本身的有關(guān)信息??扇omain,Expires,Path,HasKeys值,意義同前。u【例9-6】建立名為user的Cookie字典,其中,關(guān)鍵字分別為name、passwordu u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2) Response對(duì)象的的屬性u(píng) Buffer屬性:Buffer屬性用來設(shè)置能否把We

28、b頁面輸出到緩沖區(qū)。u Buffer屬性語法格式為: u Response.Buffer=Boolean Value(布爾值)u 留意:當(dāng)Buffer屬性設(shè)置為True時(shí),假設(shè)調(diào)用了End方法,緩沖區(qū)的內(nèi)容也會(huì)發(fā)送給客戶。當(dāng)Buffer屬性值為False時(shí),Web效力器在處置每一句腳本時(shí)都向客戶發(fā)送信息,而不是不斷等到一切的腳本處置完才發(fā)送。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Expires屬性:控制頁面在緩沖區(qū)中的有效時(shí)間。u Expires屬性語法格式為: u Response.Expires=Intnum u 其中,參數(shù)Intnum是用來設(shè)置保管的時(shí)間長度,單u 位是min分鐘

29、u ExpiresAbsolute屬性:用來指定緩存于閱讀器中的頁面確實(shí)切到期日期和時(shí)間。u 語法格式為:u Response.ExpiresAbsolute=日期時(shí)間u 其中,日期的值用規(guī)范的月/日/年格式表示 u 留意:Expires屬性采用相對(duì)時(shí)間來實(shí)現(xiàn)即再過多長時(shí)間該頁面失效,而ExpiresAbsolute屬性采用絕對(duì)時(shí)間來實(shí)現(xiàn)即在某一特定時(shí)間該頁面失效。 u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(3) Response對(duì)象的方法u Write方法:可以把信息從效力器端直接送到客戶端。u 語法格式為:Response.Write.Stringu 其中,參數(shù)String為變量或字

30、符串,變量可以是所運(yùn)用的腳本言語中的恣意數(shù)據(jù)類型。u【例9-7】Write方法運(yùn)用實(shí)例chap9-7.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-10所示。u Write方法演示實(shí)例u u u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-10u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Redirect方法:引導(dǎo)客戶端的閱讀器立刻重定向到程序指定的URL位置,也就是進(jìn)入另一個(gè)Web頁面,類似于HTML中的超鏈接。u 語法格式為:Response.Redirect Stringu 其中,參數(shù)String為網(wǎng)址變量或URL字符串 Writeu【例9-8】Redirect方法運(yùn)用實(shí)例:根據(jù)客戶的不同身份,為不同的客

31、戶指定不同的頁面??蛻舳四_本程序chap9-8.html代碼如下,運(yùn)轉(zhuǎn)結(jié)果如圖9-11所示。u Write方法演示實(shí)例u u u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-11u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u當(dāng)用戶在文本框內(nèi)輸入待查找的關(guān)鍵字,并選擇相應(yīng)的搜索引擎后,單擊“搜索按鈕,將執(zhí)行程序chap9-9.asp,代碼如下,運(yùn)轉(zhuǎn)結(jié)果如圖9-12所示此處省略圖顯示。u Redirect方法效力器端腳本演示實(shí)例u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Clear方法:去除Web Server緩沖區(qū)中的內(nèi)容,但不能去除HTTP首部。u 其語法格式為:Response.C

32、lear u 留意:在運(yùn)用這一方法時(shí),Response對(duì)象的Bufferu 屬性必需設(shè)置為True,否那么,將會(huì)導(dǎo)致程序執(zhí)行時(shí)u 的錯(cuò)誤。u End方法:使Web效力器立刻停頓處置ASP程序,u 在調(diào)用End方法之后出現(xiàn)的一切代碼都不會(huì)被執(zhí)行,u 包括純HTML代碼的顯示。u 語法格式為:Response.End u Flush方法:立刻將緩存在效力器端的Responseu 輸出信息發(fā)送到客戶端顯示。u 語法格式為:Response.Flush u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u3Session對(duì)象u運(yùn)用Session對(duì)象可以存儲(chǔ)特定的用戶會(huì)話所需的信息。當(dāng)用戶在運(yùn)用程序的不同頁面之間

33、切換時(shí),存儲(chǔ)在Session對(duì)象中的變量不被去除,一直存在。u可以運(yùn)用Session方法顯式地終了一個(gè)會(huì)話和設(shè)置空閑會(huì)話的超時(shí)時(shí)間。uSession數(shù)據(jù)存儲(chǔ)在效力器端,Cookie數(shù)據(jù)存儲(chǔ)在客戶端,因此不能經(jīng)過查看Cookie來得到用戶Session里的內(nèi)容。u假設(shè)閱讀器不支持運(yùn)用Cookie,或者閱讀器設(shè)置為回絕接受Cookie,那么不能運(yùn)用Session。uSession對(duì)象的語法格式為:u Session.屬性|方法|事件 u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(1) Session對(duì)象的屬性u(píng) SessionID屬性:當(dāng)用戶第一次在一個(gè)運(yùn)用程序中懇求一個(gè)ASP頁面時(shí),ASP將運(yùn)用一

34、個(gè)復(fù)雜的算法賦予Session一個(gè)值,然后將這個(gè)值以Cookie的方式保管在用戶的計(jì)算機(jī)上。隨后,每當(dāng)用戶向Web效力器懇求一個(gè)頁面,該Cookie就被放在HTTP懇求的首部中發(fā)送到效力器上,這樣效力器就可以根據(jù)SessionID識(shí)別用戶。創(chuàng)建和檢查這些Cookie需求一定的系統(tǒng)開銷,可以運(yùn)用標(biāo)志來禁用Web效力器或特定頁面的Cookie。SessionID屬性就是用來訪問這一值的,它以長整型數(shù)據(jù)類型前往。u 其語法格式為:Session.SessionIDu9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-9】SessionID屬性運(yùn)用實(shí)例chap9-10.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-13所示。u

35、 u SessionID屬性演示實(shí)例u 當(dāng)前的SessionID為:u u u 創(chuàng)建一個(gè)Session(“Counters)變量,并且將內(nèi)容設(shè)置為2u u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件圖9-13u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Timeout屬性:假設(shè)用戶在指定時(shí)間內(nèi)沒有懇求或刷新運(yùn)用程序中的任何頁,會(huì)話將自動(dòng)終了。這段時(shí)間的默許值是20min。對(duì)于一個(gè)特定的會(huì)話,假設(shè)想設(shè)置一個(gè)與默許的超時(shí)值不同的值,可以設(shè)置Session對(duì)象的Timeout屬性。Timeout屬性以min為單位,為該運(yùn)用程序中的Session對(duì)象指定超時(shí)時(shí)限,其語法格式為:Session.Timeou

36、t=IntNumu9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2) Session對(duì)象的方法u Session對(duì)象只需一個(gè)方法,就是Abandon方法。該方法用于釋放Web效力器用于保管某個(gè)用戶會(huì)話信息的存儲(chǔ)空間。u 語法格式為:Session.Abandonu(3) Session對(duì)象的事件u Session_OnStart事件:在效力器創(chuàng)建新會(huì)話時(shí)發(fā)生,效力器在執(zhí)行懇求的頁之前先處置該腳本。Session對(duì)象的OnStar事件中的代碼假設(shè)有的話保管在global.asa文件中。u 語法格式為:u u Sub Session_OnStartu u End Subu u9.2.4 ASP的內(nèi)置對(duì)

37、象和運(yùn)用組件u Session_OnEnd事件u Session_OnEnd事件在用戶會(huì)話終了時(shí)或腳本中調(diào)用了Session對(duì)象的Abandon方法時(shí)被觸發(fā)。Session_OnEnd事件過程同樣保管在global.asa文件里。u 語法格式為:u u Sub Session_OnEndtu u End Subu u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u4Application對(duì)象u可以運(yùn)用Application對(duì)象在給定的運(yùn)用程序的一切用戶之間共享信息,并在效力器運(yùn)轉(zhuǎn)期間耐久地保管數(shù)據(jù)。u當(dāng)一個(gè)缺省的Web站點(diǎn)運(yùn)用程序或虛擬目錄運(yùn)用程序的個(gè)頁面接納到第一個(gè)懇求時(shí),那么產(chǎn)生個(gè)Applicat

38、ion對(duì)象,緊接著會(huì)為該用戶產(chǎn)生一個(gè)Session對(duì)象,并開場該用戶的會(huì)話。u當(dāng)更多會(huì)話開場時(shí),單個(gè)的Application對(duì)象仍會(huì)堅(jiān)持在作用域內(nèi)。只需當(dāng)Web效力器停頓任務(wù),或這個(gè)運(yùn)用程序真正從效力器上卸載時(shí),該運(yùn)用程序才會(huì)封鎖,Application對(duì)象也就被銷毀uApplication對(duì)象的語法格式為:u Application.屬性|方法|事件 u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(1) Application對(duì)象的屬性u(píng)Application對(duì)象沒有內(nèi)置的屬性,但用戶可以創(chuàng)建本人的屬性,又稱為Application變量。u語法格式為:Application(“屬性|集合稱號(hào))=

39、屬性值u由于存儲(chǔ)在Application對(duì)象中的數(shù)據(jù)可以被一切用戶讀取,所以Application對(duì)象的屬性特別適宜在運(yùn)用程序的用戶之間傳送信息。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2) Application對(duì)象的方法u Lock()方法:用于鎖定對(duì)象,制止其他用戶修正Application中的屬性。這樣在同一時(shí)辰只需一個(gè)用戶對(duì)Application對(duì)象進(jìn)展操作,以保證數(shù)據(jù)的一致性和完好性。直到調(diào)用Application對(duì)象的Unlock方法,才允許下一個(gè)用戶修正Application的屬性。假設(shè)用戶沒有明確地調(diào)用Unlock方法,那么效力器將在ASP文件終了或超時(shí)后解除對(duì)Appli

40、cation對(duì)象的鎖定。u語法格式為:Application.Locku Unlock方法:用于解除對(duì)Application對(duì)象的鎖定,允許其他用戶修正Application對(duì)象的屬性。u 語法格式為:Application.UnLocku9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(3) Application對(duì)象的事件u Application_OnStart事件:僅在第一個(gè)用戶懇求時(shí)發(fā)生,并且只被每個(gè)運(yùn)用觸發(fā)一次。假設(shè)隨后還有第二、第三用戶訪問該站點(diǎn),Application_OnStart事件都不會(huì)再發(fā)生,由于運(yùn)用已處于運(yùn)轉(zhuǎn)形狀。u語法格式為:u u Sub Application_OnSt

41、artu u End Subu u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Application_OnEnd事件:在退出運(yùn)用時(shí)或Web效力器被封鎖時(shí),于Session_OnEnd事件之后發(fā)生。同樣對(duì)每個(gè)運(yùn)用來說,Application_OnEnd事件也僅被觸發(fā)一次。u語法格式為:u u Sub Application_OnEndu u End Subu u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-10】Application運(yùn)用實(shí)例chap9-11.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-14所示:u Application演示實(shí)例u u u 來訪人數(shù)合計(jì):u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件

42、圖9-14u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(4) Session與Application的比較u兩者都允許用戶自定義屬性,對(duì)象中的變量都可以進(jìn)展存取,都有生命周期和作用域,但它們的生命周期和作用范圍卻是完全不同的。uSession對(duì)象是每位銜接者本人所擁有的,每有一個(gè)銜接就為它單獨(dú)產(chǎn)生一個(gè)Session對(duì)象,有多少個(gè)銜接就有多少個(gè)對(duì)象,終了一個(gè)銜接就終止一個(gè)Session對(duì)象。而Application對(duì)象是一切該網(wǎng)頁銜接者共有的一個(gè)對(duì)象。它是當(dāng)有第一個(gè)銜接時(shí)產(chǎn)生,直至一切銜接都斷開或Web效力器被封鎖而終止。uSession對(duì)象通常被用來記錄單個(gè)用戶的信息,如:身份密碼、個(gè)人喜好等。

43、Application對(duì)象那么被用來記錄一切用戶的公共信息,如:主頁訪問記數(shù)器、公共討論區(qū)的信息等。 u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u5Server對(duì)象uServer對(duì)象提供對(duì)效力器訪問的根本方法,主要包括創(chuàng)建ActiveX組件實(shí)例對(duì)象、映射目錄和編碼解碼。u 語法格式為:Server.屬性|方法u(1) Server對(duì)象的屬性u(píng)Server對(duì)象的屬性只需一個(gè),即ScriptTimeOut。該屬性的主要功能就是用于設(shè)置一個(gè)腳本文件執(zhí)行的最長時(shí)間。u語法格式為:Server.ScriptTimeOut=nu 其中,參數(shù)n為指定的延時(shí)時(shí)間長度,單位是s而不是min。系統(tǒng)的默許值為90s。

44、用戶可以經(jīng)過設(shè)置參數(shù)n的值來改動(dòng)某個(gè)腳本文件執(zhí)行的最長時(shí)間,但不能低于90s,否那么仍以默許值作為腳本文件執(zhí)行的最長時(shí)間。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2) Server對(duì)象的方法u HTMLEncode方法:允許對(duì)特定的字符串進(jìn)展HTML編碼。假設(shè)想顯示某個(gè)HTML頁面中涉及到的實(shí)踐HTML代碼或ASP腳本,必需運(yùn)用Server對(duì)象的HTMLEncode方法。這樣,當(dāng)在閱讀器中顯示HTML字符串時(shí),就不會(huì)把它解釋為文本格式的指令。u語法格式為:Server.HTMLEncode(String)。u 其中,參數(shù)String是指欲編碼的字符串,它的功能是將字符串編碼為ASCII方式

45、的HTML文件。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u URLEncode方法:類似于HTMLEncode方法,但它將URL編碼規(guī)那么運(yùn)用到指定的字符串中。當(dāng)字符串?dāng)?shù)據(jù)以URL的方式傳送到效力器時(shí),在字符串中不允許出現(xiàn)空格,也不允許出現(xiàn)特殊字符。假設(shè)有空白字符,在結(jié)果中會(huì)運(yùn)用“+字符來替代,特殊字符那么用%、數(shù)值與字符的方式表示。uURLEncode方法的語法格式為:Server.URLEncode(String)u 其中,參數(shù)String是指URL字符串。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u MapPath方法:是將指定的虛擬途徑當(dāng)前效力器上的絕對(duì)途徑或相對(duì)于當(dāng)前頁面的途徑映射到物

46、理途徑上去。uMapPath方法的語法格式為:Server.MapPath(String)u 其中,參數(shù)String是指虛擬途徑字符串。語句中String以一個(gè)正斜杠/或反斜杠開場,那么MapPath方法將前往效力器端的宿主目錄。u該方法通常被用來翻開一個(gè)數(shù)據(jù)庫文件或文本文件。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u CreateObject方法:可以用來創(chuàng)建曾經(jīng)注冊到效力器上的ActiveX組件實(shí)例。uCreateObject方法的語法格式為:Server.CreateObjec(ProgID)u 這里,ProgID指定了組件標(biāo)識(shí)。組件可以是各種方式的可執(zhí)行程序DLL、EXE等,不用思索它

47、的位置,只需在Windows NT或98中登記注冊了這些程序,COM就會(huì)在系統(tǒng)注冊表Registry里維護(hù)這些資料,讓程序員調(diào)用。u留意:uCreateObiect方法僅能用來創(chuàng)建外置對(duì)象實(shí)例,不能u用來創(chuàng)建系統(tǒng)的內(nèi)置對(duì)象實(shí)例。uCreateObiect方法建立的對(duì)象實(shí)例僅在創(chuàng)建它的頁面u中有效。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Transfer方法:將懇求從正在執(zhí)行的ASP文件發(fā)送到另一個(gè)文件中。在傳輸過程中,原來懇求的ASP文件立刻終止執(zhí)行,但并不去除輸出緩沖區(qū)。懇求信息然后在目的文件中變得可用并開場執(zhí)行。執(zhí)行過程中,該文件與原來懇求的文件訪問同一組內(nèi)部對(duì)象。uTransfer方

48、法的語法格式為: Server.Transfer(String)u 其中,參數(shù)String是指包含了新文件URL的字符串。u【例9-11】Transfer方法運(yùn)用實(shí)例:假假設(shè)有兩個(gè).asp文件,chap9-12.asp和chap9-13.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-15所示此處省略圖顯示:u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uChap9-12.asp代碼如下:uTransfer方法演示實(shí)例u%Response.Write 歡迎進(jìn)入chap9-12.asp文件 uResponse.Write Session.SessionIDuResponse.Write ()uResponse.Write

49、 正預(yù)備進(jìn)入chap9-13.asp文件“uServer.Transfer(chap9-13.asp)%uChap9-13.asp代碼如下:uTransfer方法演示實(shí)例u%Response.Write Session.SessionIDuResponse.Write()uResponse.Write 歡迎進(jìn)入chap9-13.asp文件“%u u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Execute方法:用于停頓當(dāng)前文件的運(yùn)轉(zhuǎn),并將控制權(quán)交給作為一個(gè)參數(shù)傳送過來的另一個(gè)文件,執(zhí)行其內(nèi)容,然后再將控制權(quán)交給原始的文件。該方法類似于許多編程言語的過程調(diào)用,只不過過程調(diào)用是執(zhí)行一個(gè)過程,而Exe

50、cute方法是執(zhí)行一個(gè)完好的ASP文件。u語法格式為:Server.Execute(String)u 其中,參數(shù)String是指控制權(quán)變換文件的相對(duì)URL。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u【例9-12】Execute方法運(yùn)用實(shí)例:假假設(shè)有兩個(gè).asp文件,chap9-14.asp和chap9-15.asp,運(yùn)轉(zhuǎn)結(jié)果如圖9-16所示此處省略圖顯示:uChap9-14.asp代碼如下:uExecute方法演示實(shí)例u%Response.Write 正在執(zhí)行chap9-14.asp文件 uResponse.Write 正預(yù)備進(jìn)入chap9-15.asp文件“uServer.Execute(c

51、hap9-15.asp)uResponse.Write 退出chap9-15.asp文件,前往chap9-14.asp文件%uchap9-15.asp代碼如下:uTransfer方法演示實(shí)例u%Response.Write 歡迎進(jìn)入chap9-15.asp文件“u%u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u GetLastError方法:用于發(fā)現(xiàn)執(zhí)行文件的ASP程序過程中最后產(chǎn)生的錯(cuò)誤信息。前往一個(gè)ASPError對(duì)象的參考實(shí)例,包括產(chǎn)生錯(cuò)誤的文件、錯(cuò)誤行號(hào)及錯(cuò)誤代碼等。u語法格式為:Server.GetLastError() u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u6ObjectConte

52、xt對(duì)象u運(yùn)用ObjectContext對(duì)象可以提交或放棄一項(xiàng)由MTSMicrosoft Transaction Server管理的事務(wù)。uASP給出了“標(biāo)識(shí),用來標(biāo)識(shí)事務(wù)處置要求,運(yùn)轉(zhuǎn)時(shí)假設(shè)遇到“就知道這個(gè)Web頁面要運(yùn)用分布式事務(wù)處置來運(yùn)轉(zhuǎn)。這時(shí)數(shù)據(jù)的傳輸必需在每一個(gè)數(shù)據(jù)傳輸點(diǎn)都勝利,否那么,一切的數(shù)據(jù)更新都將無效。u TRANSACTION標(biāo)識(shí)可以聲明該Web頁面以MTS分布式處置事務(wù),其語法格式為:u u 其中的功能參數(shù)闡明見表9-7所示:u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件uTRANCTION標(biāo)識(shí)運(yùn)用的參數(shù)見表9-7所示:參 數(shù) 名功能簡述Required將Web頁面初始化為分布

53、式事務(wù)處置型SupportedWeb頁面需求分布式事務(wù)Not_SupportedWeb頁面并不需求分布式事務(wù)u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(1) ObjectContext對(duì)象的方法u SetComplete方法:立刻終止該Web頁面所進(jìn)展的事務(wù)處置,假設(shè)事務(wù)中的一切組件都調(diào)用SetComplete方法,事務(wù)將完成,一切處置的數(shù)據(jù)都有效。SetComplete方法忽略腳本中以前調(diào)用過的任何SetAbort方法。該方法的語法格式為:ObjectContext.SetCompleteu SetAbort方法:立刻終止該Web頁面所進(jìn)展的事務(wù)處置,但該次事務(wù)處置被聲明為失敗,一切處置的數(shù)

54、據(jù)都無效,必需被復(fù)原。該方法的語法格式為:ObjectContext.SetAbort()u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u(2) ObjectContext對(duì)象的事件u OnTransactionCommit事件:在一個(gè)腳身手務(wù)勝利提交后發(fā)生,當(dāng)該事件發(fā)生時(shí),假設(shè)腳本中有OnTransactionCommit子例程,效力器將處置該子例程。u OnTransacfionAbort事件:當(dāng)事務(wù)處置失敗時(shí),該事件將發(fā)生。假設(shè)腳本中有OnTransactionAbort子例程,當(dāng)該事件發(fā)生時(shí),Web效力器將執(zhí)行它。u在ObjectContext實(shí)現(xiàn)的兩種方法中,SetAbort方法完全終止事

55、務(wù)。這樣,MTS不更新在第一階段所進(jìn)展的操作。事務(wù)終止時(shí),將處置腳本的OnTransactionAbort事件。u9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u7ASPError對(duì)象uASPError對(duì)象是ASP 3.0中的新對(duì)象,用來獲取發(fā)生在ASP頁面中最后的錯(cuò)誤細(xì)節(jié),這些錯(cuò)誤信息經(jīng)過Server.GetLastError方法前往。 u(1) ASPError對(duì)象的屬性u(píng) ASPCode屬性:該屬性前往一個(gè)包含了由ASP或IIS產(chǎn)生的錯(cuò)誤號(hào)的字符串,主要用于顯示一些援用外部組件的錯(cuò)誤。其語法格式為:String=ASPError.ASPCodeu ASPDescription屬性:該屬性的值由A

56、SP預(yù)處置器產(chǎn)生,將前往包含了錯(cuò)誤信息的字符串,對(duì)大部分的腳本錯(cuò)誤該值為空。其語法格式為:String=ASPError.ASPDescriptionu9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Category屬性:該屬性是表示錯(cuò)誤根源的字符串,該錯(cuò)誤能夠由ASP、腳本言語或外部對(duì)象產(chǎn)生。其語法格式為:String=ASPError.Categoryu Column屬性:該屬性前往頁面中產(chǎn)生錯(cuò)誤的字符位置。其語法格式為:Long=ASPError.Columnu Description屬性:當(dāng)錯(cuò)誤出現(xiàn)時(shí),該屬性總有一個(gè)值,該值是一個(gè)對(duì)錯(cuò)誤進(jìn)展描畫的短字符串。其語法格式為:String=ASPE

57、rror.Descriptionu File屬性:該屬性在產(chǎn)生錯(cuò)誤時(shí)前往正在處置頁面的名字。其語法格式為:String=ASPError.Fileu Line屬性:該屬性在產(chǎn)生錯(cuò)誤時(shí)前往頁面中錯(cuò)誤檢測位置的行號(hào)。其語法格式為:Long=ASPError.Lineu9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組件u Number屬性:對(duì)于發(fā)生的錯(cuò)誤,Number屬性前往規(guī)范的COM錯(cuò)誤代碼。其語法格式為:Long=ASPError.Numberu Source屬性:該屬性在產(chǎn)生錯(cuò)誤時(shí)前往出現(xiàn)錯(cuò)誤行的實(shí)踐源代碼。其語法格式為:String=ASPError.Sourceu9.2.4 ASP的內(nèi)置對(duì)象和運(yùn)用組

58、件u(2) 配置定制的錯(cuò)誤頁u 當(dāng)ASP頁面出現(xiàn)錯(cuò)誤并且該頁無法發(fā)送到閱讀器上時(shí),IIS將發(fā)送一個(gè)包含錯(cuò)誤信息的頁面來替代該頁面,該頁面可以是普通的HTML頁面,也可以是ASP頁面。IIS安裝了許多缺省的處置錯(cuò)誤的頁面,這些頁面通常保管在winnthelpiishelpcommon目錄下,它們像其他頁面一樣,可以在閱讀器中翻開,也可以在文本編輯器中分析它們的源代碼。除了這些缺省的錯(cuò)誤處置頁面,可以指示IIS裝載其他的頁面來替代這些頁面,這些錯(cuò)誤頁面通常稱為定制的錯(cuò)誤頁面。u9.3.1 ADO對(duì)象模型 uADO是Web數(shù)據(jù)庫運(yùn)用的最正確選擇,目前許多基于Web的運(yùn)用系統(tǒng)都運(yùn)用ADO技術(shù)來實(shí)現(xiàn)對(duì)W

59、eb數(shù)據(jù)庫的訪問。uADO是一個(gè)ASP內(nèi)置的效力器組件,是一座銜接Web運(yùn)用程序和OLE DB的橋梁,運(yùn)用它結(jié)合ASP技術(shù)可以在網(wǎng)頁中執(zhí)行SQL命令,到達(dá)數(shù)據(jù)庫訪問的目的。uADO技術(shù)是經(jīng)過ADO對(duì)象的屬性、方法來完成相應(yīng)的數(shù)據(jù)庫訪問。uADO共有以下七種獨(dú)立的對(duì)象,如教材表9-8所示。u9.3.1 ADO對(duì)象模型 uADO的對(duì)象模型如圖9-17所示:圖9-17u9.3.2 用Connection對(duì)象銜接數(shù)據(jù)庫uConnection對(duì)象用于建立和管理運(yùn)用程序與數(shù)據(jù)源間的銜接,也可用它來執(zhí)行一個(gè)命令。uConnection對(duì)象的屬性和方法可用來翻開和封鎖數(shù)據(jù)庫銜接,并發(fā)布對(duì)更新信息的查詢。u1創(chuàng)

60、建Connection對(duì)象u在運(yùn)用Connection對(duì)象之前必需創(chuàng)建該對(duì)象,語法格式為:u 字符串“ADODB.Connection是用來創(chuàng)建Connection對(duì)象的ProgID。conn是創(chuàng)建的Connection對(duì)象。u也可以運(yùn)用標(biāo)志來創(chuàng)建對(duì)象,語法格式為:uConnection對(duì)象的屬性見教材表9-9所示,方法見教材表9-10所示:u9.3.2 用Connection對(duì)象銜接數(shù)據(jù)庫u2銜接數(shù)據(jù)源:u 運(yùn)用DSN銜接數(shù)據(jù)源u先用“ODBC數(shù)據(jù)源管理器創(chuàng)建系統(tǒng)DSN,才干確保一切的Web用戶可以運(yùn)用相應(yīng)的數(shù)據(jù)庫。u 例如:假設(shè)曾經(jīng)為books_management數(shù)據(jù)庫創(chuàng)建系u 統(tǒng)DSN,稱號(hào)為books,登錄賬戶為sa,密碼為123。u 方法為:u也可以先設(shè)置Co

溫馨提示

  • 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)論