



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、計算機網(wǎng)頁設(shè)計畢業(yè)論文asp技術(shù)在交互式網(wǎng)頁設(shè)計中的運用一、asp技術(shù)簡介asp技術(shù)asp(activeserverpages動態(tài)網(wǎng)頁)是微軟公司推出的一種用以取代cgi(commongatewayinterface通用網(wǎng)關(guān)接口)的技術(shù)。目前,internet上的很多基于windows平臺的web站點已開場應(yīng)用asp來替換cgi。簡單地講,asp是一個位于服務(wù)器端的腳本運行環(huán)境,通過這種環(huán)境,用戶能夠創(chuàng)立和運行動態(tài)的交互式web服務(wù)器應(yīng)用程序,如交互式動態(tài)網(wǎng)頁,包括使用表單收集和處理信息,上傳與下載等等。通常情況下,用戶通過閱讀器看到的網(wǎng)頁大多是靜態(tài)的,目前internet上的很多站點,仍然提
2、供靜態(tài)(static)的主頁內(nèi)容。所謂靜態(tài),指的就是站點的主頁內(nèi)容是固定不變的。當閱讀器通過internet的(hypertexttransportprotocol)協(xié)議,向站點服務(wù)器(webserver)要求提供主頁的內(nèi)容時,站點服務(wù)器收到要求后,就傳送原已設(shè)計好的靜態(tài)的的文件數(shù)據(jù)給閱讀器。一個靜態(tài)的站點,若要更新主頁的內(nèi)容,必須手動的來更新其的文件數(shù)據(jù)。而隨著web應(yīng)用的發(fā)展,用戶希望能夠看到根據(jù)要求而動態(tài)生成的主頁,例如響應(yīng)用戶查詢數(shù)據(jù)庫的要求、生成報表等。當在閱讀器上填好表單(form)的輸入數(shù)據(jù),以提供要求時,能夠在站點服務(wù)器中執(zhí)行的應(yīng)用程序,而不只是一個文件。站點服務(wù)器收到要求執(zhí)行
3、的應(yīng)用程序,分析表單(form)的輸入數(shù)據(jù),將執(zhí)行的結(jié)果以的格式傳送給閱讀器。根據(jù)用戶請求生成動態(tài)主頁的傳統(tǒng)方法有cgi、isapi等。cgi是根據(jù)閱讀器端的請求激活響應(yīng)進程,每一個請求對應(yīng)一個進程。當同時有很多請求時,程序擠占系統(tǒng)資源,造成效率低下;isapi針對這一缺點進行改良,利用dll(動態(tài)鏈接庫)技術(shù),以線程代替進程,提高了性能和速度,但要考慮線程的同步問題,而且開發(fā)步驟煩瑣。這兩種技術(shù)和另一普遍使用的開發(fā)動態(tài)網(wǎng)頁的技術(shù)java都還存在著另外一個問題,那就是開發(fā)困難,程序的開發(fā)和寫作是兩個完全不同的經(jīng)過,需要專門的程序員開發(fā)。而較簡單的開發(fā)技術(shù)如javascript和idc(inte
4、rnetdatabaseconnector)等功能有限,不敷使用。asp使用的activex技術(shù)基于開放設(shè)計環(huán)境,用戶能夠本人定義和制作組件參加其中,使本人的動態(tài)網(wǎng)頁幾乎具有無限的擴大能力,這是傳統(tǒng)的cgi等程序所遠遠不及的地方。asp與常見的在client端實現(xiàn)動態(tài)主頁的技術(shù)如javaapplet、activexcontrol、vbscript、javascript等不同,asp中的命令和script語句都是由服務(wù)器來解釋執(zhí)行的,執(zhí)行結(jié)果產(chǎn)生動態(tài)生成的web頁面并送到閱讀器;而client端技術(shù)的script命令則是由閱讀器來解釋執(zhí)行。由于asp是在服務(wù)器端解釋執(zhí)行,開發(fā)者能夠不必考慮閱讀器
5、能否支持asp;同時由于它在服務(wù)器端執(zhí)行,開發(fā)者也不必擔憂別人下載程序進而竊取編程邏輯。asp通過后綴名為.asp的asp文件來實現(xiàn),一個.asp文件相當于一個可執(zhí)行文件,因而必須放在web服務(wù)器上有可執(zhí)行權(quán)限的目錄下。當用戶從閱讀器輸入了.asp文件的地址后,閱讀器就將這個url請求發(fā)給webserver,假如webserver上裝了asp,就調(diào)用asp。asp讀出相應(yīng).asp文件,解釋并執(zhí)行命令,動態(tài)生成一個頁面回傳webserver,然后webserver再把結(jié)果發(fā)送給閱讀器。asp文件的制作和類似,且和開發(fā)集成,能夠在同一個經(jīng)過完成,利用asp將能夠執(zhí)行的腳本嵌入到文件中(將文件的后綴
6、名改為.asp),這使得文件的編寫與腳本的開發(fā)融合在一起。通過asp內(nèi)置的對象、服務(wù)器組件(servercomponent)能夠完成非常復(fù)雜的任務(wù),而且用戶還能夠本人開發(fā)或利用別人開發(fā)的服務(wù)器組件完成專門的任務(wù)。asp比擬網(wǎng)關(guān)及服務(wù)器擴展形式有著下面優(yōu)點: (1)完全與文件融合在一起; (2)容易創(chuàng)立,不需要其它編譯、鏈接程序; (3)面向?qū)ο蟮牟⑼ㄟ^activexserver對象可擴展。二、電子商務(wù)數(shù)據(jù)訪問方式電子商務(wù)是指通過電子方式,并在網(wǎng)絡(luò)基礎(chǔ)上實現(xiàn)物資、人員經(jīng)過的協(xié)調(diào),以便商業(yè)交換的活動。在電子商務(wù)系統(tǒng)中,web提供了與客戶進行通信聯(lián)絡(luò)的有效手段,利用web技術(shù),實現(xiàn)web服務(wù)器與數(shù)據(jù)
7、庫系統(tǒng)的連接,完成對數(shù)據(jù)的處理與查詢,用戶能夠通過操作簡單易學(xué)的閱讀器來查詢處理所需要的各種數(shù)據(jù)。實現(xiàn)web服務(wù)器與數(shù)據(jù)庫的連接一般有兩種方法:一種是利用中間件技術(shù)在兩者之間建立連接和通信,如cgi(通用網(wǎng)關(guān)接口)和api(應(yīng)用程序編程接口)。web服務(wù)器通過調(diào)用cgi程序?qū)崿F(xiàn)與web閱讀器的交互,即cgi程序接受閱讀器發(fā)給web服務(wù)器的信息,進行處理后,將相應(yīng)結(jié)果再送回給web服務(wù)器,通過web服務(wù)器將信息傳送給閱讀器。但cgi程序在響應(yīng)速度和資源利用等方面有較大局限性,客戶端每請求一個cgi程序,服務(wù)器端便打開一個進程,當請求的數(shù)量較大時容易引起瓶頸現(xiàn)象,開發(fā)人員常利用api編程來擴展服務(wù)
8、器功能,api程序占系統(tǒng)資源少,運行效率較高,但它的編程較cgi程序更為復(fù)雜;另一種是由閱讀器中的java小應(yīng)用程序(javaapplet)通過閱讀器訪問web服務(wù)器上的數(shù)據(jù)庫,利用了jdbc(javadatabaseconnectivity)技術(shù),它通過jdbc提供的api實現(xiàn)對webserver的訪問。由于javaapplet本身的局限性,目前大多數(shù)的應(yīng)用是基于中間件技術(shù)的。asp也是屬于中間件的一種形式,但在windows平臺上它比擬網(wǎng)關(guān)及服務(wù)器擴展形式有著較大的優(yōu)點。網(wǎng)關(guān)的最大特點是它的平臺無關(guān)性,但網(wǎng)關(guān)程序通常較難編寫和改變。網(wǎng)關(guān)程序通常是一個獨立的程序,并不和文件融合在一起,它需要
9、用如c、c+、vb、perl等語言來編寫?yīng)毩⒌膽?yīng)用程序,而asp應(yīng)用改變了這一點。使用asp不僅能夠讀取access和sqlserver的數(shù)據(jù)庫,而且還能夠讀取其他odbc(opendatabaseconnect開放式數(shù)據(jù)庫互聯(lián))兼容的數(shù)據(jù)庫。在asp中訪問數(shù)據(jù)庫是通過ado(activexdatabaseobject活動數(shù)據(jù)對象)及事務(wù)處理語句來實現(xiàn)的。ado是一種操作microsoft所支持的數(shù)據(jù)庫的方法,是一項容易使用并且可擴展的將數(shù)據(jù)庫訪問添加到web頁的技術(shù)。ado對象的使用與dao(數(shù)據(jù)訪問對象)、rdo(遠程數(shù)據(jù)對象)的方式類似。在asp中,ado能夠看作是一個服務(wù)器組件,更簡單
10、點講,是一系列的對象,應(yīng)用這些功能強大的對象,即可輕松完成對數(shù)據(jù)庫復(fù)雜的操作。三、asp在電子商務(wù)中的應(yīng)用在電子商務(wù)中,對用戶而言,進行網(wǎng)上信息查詢的目的是尋找本人需要的產(chǎn)品或服務(wù),而對于商品或服務(wù)提供者來講,其目的則是向用戶推銷本人的產(chǎn)品或服務(wù)。因而,讓用戶通過閱讀器查詢服務(wù)器的后端數(shù)據(jù)庫是很多web服務(wù)提供者必需有的服務(wù),asp通過內(nèi)置的adodb組件來實現(xiàn)這一功能。能夠使用ado去編寫緊湊簡明的腳本以便連接到odbc兼容的數(shù)據(jù)庫和oledb兼容的數(shù)據(jù)源。詳細的操作步驟能夠歸納為下面幾步:創(chuàng)立數(shù)據(jù)庫源名(dsn)adodb通過odbc工作,因而要在odbc中設(shè)置dsn(數(shù)據(jù)源名)。打開wi
11、ndows的控制面板,雙擊odbc的圖標,然后選擇文件dsn的屬性頁,單擊添加,選擇數(shù)據(jù)庫驅(qū)動程序,然后單擊下一步,根據(jù)屏幕的指示鍵入數(shù)據(jù)源文件的名稱,然后單擊下一步,再單擊完成創(chuàng)立數(shù)據(jù)源。創(chuàng)立數(shù)據(jù)庫鏈接鏈接用以保持一些關(guān)于正在訪問的數(shù)據(jù)的動態(tài)信息,以及鏈接者信息。利用adodb的成員函數(shù)open和先前設(shè)定的dsn與數(shù)據(jù)庫連接,其語法如下:setconnect=server.createobject(adodb.connection)創(chuàng)立了鏈接對象connect。connect.open(dsn=dsnname;uid=userid;pwd=password)打開鏈接。dsnname為數(shù)據(jù)源名
12、;userid為用戶名;password為用戶口令。創(chuàng)立數(shù)據(jù)對象ado中的數(shù)據(jù)對象通常保存的是查詢結(jié)果。recordset是ado中最復(fù)雜的對象,有很多屬性和方法,靈敏運用,能夠到達很多好的效果。其創(chuàng)立方法如下:setrecordset=connect.execute(sqtstr)創(chuàng)立并打開了對象recordset,sqtstr是一個串,代表一條標準的sql語句。例如:sqlstr=select*fromb1setrecordset=connect.execute(sqlstr)這條語句執(zhí)行后,對象recordset中就保存了b1中的所有記錄。操作數(shù)據(jù)庫可利用execute方便地執(zhí)行數(shù)據(jù)的插
13、入、修改、刪除等操作。如執(zhí)行插入操作:sqlstr=insertintob1values(1,2)connect.execute(sqlstr)關(guān)閉數(shù)據(jù)對象和鏈接在使用了ado對象之后,一定要關(guān)閉數(shù)據(jù)對象和鏈接。在asp中通過調(diào)用方法close實現(xiàn)關(guān)閉。關(guān)閉創(chuàng)立的數(shù)據(jù)對象:recordset.closesetrecordset=nothing關(guān)閉創(chuàng)立的鏈接對象:connect.closesetconnect=nothing完好的程序片段:/產(chǎn)生組件實例/顯示結(jié)果上述是用asp訪問數(shù)據(jù)庫的全經(jīng)過,由于應(yīng)用面向?qū)ο笏枷耄胁僮鞫急葦M簡單,用戶需要注意的僅是對數(shù)據(jù)構(gòu)造的了解、當前所操作的對象及對象
14、的屬性等等,只要對這些有了明晰的認識,再加上asp強大功能,在網(wǎng)絡(luò)上使用數(shù)據(jù)庫,實現(xiàn)用戶與頁面間交換信息,就再也不是什么難事了。 nextpage四、主要功能程序段4、1打開數(shù)據(jù)庫optionexplicitdimconn,connstr,db,rsdb=database/#myshop.mdb/數(shù)據(jù)庫途徑setconn=server.createobject(adodb.connection)connstr=provider=microsoft.jet.oledb.4.0;datasource=server.mappath(db)conn.openconnstr4.2數(shù)據(jù)庫查詢操作/大類查訊
15、setrs=server.createobject(adodb.recordset)/只讀方式打開rs.openselectanclass,anclassidfromanclass,conn,1,1dowhilenotrs.eofresponse.writetrim(rs(anclass)rs.movenextlooprs.close/小類查詢dimrs2setrs2=server.createobject(adodb.recordset)rs2.openselectnclass,nclassidfromnclasswhereanclassid=rs(anclassid)orderbyncla
16、ssidorder,conn,1,1dowhilenotrs2.eofresponse.writetrim(rs2(nclass)rs2.movenextloop4.3添加記錄操作setrs=server.createobject(adodb.recordset)/可寫方式rs.openselectbookid,username,zhuangtai,zongerfromactions,conn,1,3rs.addnew/添加一條新記錄rs(bookid)=bookid/添加相應(yīng)的記錄rs(username)=usernamers(zhuangtai)=6rs(zonger)=0rs.update/更新數(shù)據(jù)庫4.4刪除記錄操作/從表actions中刪除actionid匹配的記錄;conn.executedeletefromactionswhereactionid=request.querystring(actionid)4.5記錄的修改和查看setrs=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年智能工廠生產(chǎn)效率提升方案申請報告
- 2025年海洋經(jīng)濟實施方案與深海資源開發(fā)報告
- 2025年植物基因編輯技術(shù)在植物抗土壤重金屬污染方面的成果鑒定報告
- 醫(yī)保支付改革下2025年醫(yī)療行業(yè)風險管理與控制報告
- 城市軌道交通建設(shè)規(guī)劃與城市景觀設(shè)計研究報告
- 2025年醫(yī)院電子病歷系統(tǒng)優(yōu)化構(gòu)建智能醫(yī)療生態(tài)系統(tǒng)報告
- 2025年醫(yī)藥企業(yè)CRO模式下的臨床試驗數(shù)據(jù)管理系統(tǒng)的應(yīng)用與優(yōu)化報告
- 原子彈相關(guān)英文課件
- 保姆奧數(shù)題目及答案
- 磅房安全考試題及答案
- 《老年人合理用藥》課件
- 【MOOC】電工電子學(xué)-浙江大學(xué) 中國大學(xué)慕課MOOC答案
- 2024年廣西職業(yè)院校技能大賽高職組《供應(yīng)鏈管理》賽項規(guī)程
- 現(xiàn)代技術(shù)服務(wù)費合同1
- 2024山西焦煤集團公司招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 2024年度工廠整體搬遷勞動力外包合同
- 水利工程閥門安裝及調(diào)試方案
- 旅游住宿安排協(xié)議
- CT設(shè)備故障處理及應(yīng)急方案
- 心腦血管疾病預(yù)防課件
- 代持股協(xié)議書
評論
0/150
提交評論