ASP程序的編寫與優(yōu)化
- 期刊名字:大眾科技
- 文件大?。?14kb
- 論文作者:沈海洋
- 作者單位:江蘇食品職業(yè)技術(shù)學(xué)院
- 更新時間:2020-09-29
- 下載次數(shù):次
2009年第1期No.1, 2009(總第113期)DA ZHONG KE JI(Cumulatively No.113)ASP程序。&的編寫與優(yōu)你寧沈海洋(江蘇食品職業(yè)技術(shù)學(xué)院,江蘇淮安223003 )[摘要] ASP是Microsoft 公司推出的基于PWS& IS平臺的、基于ISAPI 原理的動態(tài)網(wǎng)頁開發(fā)技術(shù),目前日趨成熟完善。文章僅就編程代碼優(yōu)化來進(jìn)行一些簡單討論。[關(guān)鍵詞] ASP;編程;優(yōu)化[中圖分類號] TP311.5[文獻(xiàn)標(biāo)識碼] A[文章編號] 10-1151200901-0070-02(一)引言URLencode 方法進(jìn)行URL編碼,例子如下:ASP是Microsoft公司推出的基于PWS & IIS 臺的、基<%于ISAPI 原理 的動態(tài)網(wǎng)頁開發(fā)技術(shù),目前日趨成熟完善。URL=* xur. asp"ASP的誘人之處就在于它提供了-種簡單易學(xué)的腳本并帶有var1=* username=" & server. URLencode("xur' ")許多內(nèi)置的對象,從而提供了- -條簡捷的編程之路。本文僅var2=' "&company=" & server. URLencode (" xurstudio ")就編程代碼優(yōu)化來進(jìn)行一-些簡單討論。var3=' &phone=" & server. URLencode (' *021-53854336-186 )(二)幾種編程代碼的優(yōu)化方法response. redirect URL & "?" & varl & var2 & var31.聲明VBScript變量%)在ASP中,對vbscript提供了強勁的支持,能夠無縫集3.使用字符串建立SQL查詢成vbscript的函數(shù)、方法,這樣給擴展ASP的現(xiàn)有功能提供使用字符串來建立查詢并不能加快服務(wù)器的解析速度,了很大便利。由于ASP中已經(jīng)模糊了變量類型的概念,所以,相反,它還會增加服務(wù)器的解析時間。但在這里仍然推薦使在進(jìn)行ASP與vbscript交互的過程中,很多程序員也慣于不用字符串代替簡單的查詢語句來進(jìn)行查詢。這樣做的好處是,聲明vbscript的變量,這樣加重了服務(wù)器的解析負(fù)擔(dān),進(jìn)而可以迅速發(fā)現(xiàn)程序問題所在,從而便利高效地生成程序。示影響服務(wù)器的響應(yīng)請求速度。例如下:鑒于此,我們可以象在VB 中強制用戶進(jìn)行變量聲明-樣在vbscript中強制用戶進(jìn)行變量聲明。實現(xiàn)方法是在ASP程序mySQL= mySQL &‘from publ ishers"行首放置<% opt ionexplicit%>.mySQL= mySQL & "where state=' NY'2.對URL地址進(jìn)行編碼response. write mySQL在我們使用asp動態(tài)生成- -個帶參數(shù)URL地址并進(jìn)行跳set rstemp=conntemp. execute (mySQL)轉(zhuǎn)時,在IE中解析很正常,但在NetScrape瀏覽時卻有錯誤rstemp. close如下:set rstemp=nothingHTTP Error 400%>400 Bad Request4.使用adovbs. inc文件中定義的常量打開記錄集Due to malformed syntax,打開記錄集時,可以定義記錄集打開的游標(biāo)類型和鎖定the request could not be understood by the server.類型。在adovbs. inc文件中定義了一些常量來定義這些類型。The client should not repeat the request without moadovbs. inc文件保存在\inetpub\issamples\IISamples目ifications.中國煤化工工型和鎖定類型。解決方法是對生成的URL參數(shù)使用ASP 內(nèi)置server對象的只能向前: adOpenKeyset"TYHCNMHG[收稿日期] 2008- 10-16.[作者簡介]沈海洋(1981-),男,江蘇食品職業(yè)技術(shù)學(xué)院教師,研究方向為計算機應(yīng)用。- 70-游標(biāo)可向前或者向后,如-用戶添加記錄,新記錄不會出現(xiàn)END SUB %>在記錄集中: adOpenDynamic 游標(biāo)動態(tài)隨意; adOpenStatic然后在站點也面中進(jìn)行如下引用:記錄集不對其他用戶造成的記錄修改有所反映。鎖定類型: adLockReadOney 不能修改記錄集中的記錄;mySQL=* select * from publishers where state=' xur'adLockPessimistic在編輯- -條 記錄時鎖定它: adl sockOptimsticset session( rstemp ")=conntemp. execute (mySQL)調(diào)用記錄集Update方法時才鎖定記錄; adLockBatchOpeimstic%記錄只能成批更新。但這樣做的同時也有很大的負(fù)面影響,由于Application和session變量都只有在關(guān)閉網(wǎng)站的時候才釋放占用的資源,所以session參數(shù)會浪費大量不必要內(nèi)存,而且connectme=' DSN=xur;uid=xur;pwd=xur"此時application變量成為服務(wù)器性能的瓶頸。解決方法:sqltemp=" select * from publishers where name=' xur'"建立定義對象asp頁面,在需要進(jìn)行調(diào)用這些對象的頁面set rstemp=Server. CreateOb ject(' adodb. Recordset' )上,引入這張asp頁面。假設(shè)定義對象的asp頁面名稱為rstemp. open sqltemp, connectme, adOpenStatic,define. asp,則只要在對應(yīng)asp頁面中加入以下語句就能引adLock0ptimstic入該頁面。response. write rstemp. recordcount &”records in
"
