国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談ASP技術(shù)在WEB開發(fā)中的應(yīng)用

2009-12-31 07:24:52金 晶
職業(yè)·中旬 2009年11期
關(guān)鍵詞:服務(wù)器端實例名稱

金 晶

WWW是目前Internet上發(fā)展最快的領(lǐng)域,也是Inernet網(wǎng)上最重要的信息檢索手段。早期的WEB頁面主要是用來傳遞靜態(tài)的HTML文檔,后來由于CGI接口、VBScript和JavaScript語言的引入,特別是近幾年發(fā)展起來的ASP技術(shù),使得WEB頁面可以方便傳播動態(tài)信息。借助ASP技術(shù),可以設(shè)計出具有聲音、動畫、圖形、圖像和各種特殊效果的WEB頁面,以及方便的訪問數(shù)據(jù)庫。

一、ASP技術(shù)

1.ASP工作原理

ASP,是Active Server Pages的縮寫,即“服務(wù)器端動態(tài)網(wǎng)頁”。它是基于WEB的一種編程技術(shù),能夠把HTML文件、腳本命令以及COM組件組合在一起,形成一個能夠在服務(wù)器端運行的動態(tài)WEB應(yīng)用程序,并能夠按照用戶的要求制作出標(biāo)準(zhǔn)的HTML頁面?zhèn)鬟f給客戶端瀏覽器。

有了ASP,就不必?fù)?dān)心用戶的瀏覽器是否能夠讀懂動態(tài)網(wǎng)頁中所編寫的代碼,因為所有的程序都在服務(wù)器端執(zhí)行。當(dāng)程序執(zhí)行完畢后,服務(wù)器端執(zhí)行的結(jié)果返回給客戶端瀏覽器,這樣就減輕了客戶端瀏覽器的負(fù)擔(dān),大大提高了交互的速度。

2.ASP的運行環(huán)境

目前,ASP可運行在以下三種環(huán)境:Windows NT(2000 Server)+IIS4.0(Internet Information Server)以上;Windows NT workstation +Peer Web Server;Windows95/98+PWS(Personal Web Server)。

3.ASP文件的建立

ASP的程序代碼簡單、通用,文件名由.asp結(jié)尾,通常由四個部分構(gòu)成:標(biāo)準(zhǔn)的HTML標(biāo)記;ASP語法命令:位于<%%>之間;服務(wù)器端的include語句;腳本語言。

4.ASP的內(nèi)置對象

在面向?qū)ο缶幊讨?對象是具有屬性(數(shù)據(jù))和方法(行為方式)的實體。ASP中提供了六個內(nèi)置對象供用戶直接調(diào)用,它們分別是:Application對象,控制服務(wù)器端應(yīng)用程序的啟動和終止?fàn)顟B(tài),并保存整個應(yīng)用程序過程中的信息;Request對象,從用戶端獲取信息傳遞給服務(wù)器,它是ASP讀取用戶輸入的主要方法;Response對象,服務(wù)器將輸出的內(nèi)容發(fā)送到客戶端;Server對象,提供服務(wù)器的方法和屬性;Session對象,存儲特定的用戶會話所需的信息;Object Context對象,配合服務(wù)器進(jìn)行分布事務(wù)處理。

二、ASP中的數(shù)據(jù)庫訪問

在ASP中,利用ADO(ActiveX Data Objects)可以方便地訪問數(shù)據(jù)庫,很好地對數(shù)據(jù)庫進(jìn)行處理。筆者通過一個實例,具體闡述ASP利用ADO訪問數(shù)據(jù)庫的過程。在該實例中,用戶希望通過網(wǎng)頁能夠訪問服務(wù)器中的teacher數(shù)據(jù)庫中的Information數(shù)據(jù)表,然后將該表中的所有數(shù)據(jù)顯示在返回表格中,具體步驟如下:

1.定義數(shù)據(jù)源

在WEB服務(wù)器上,打開“控制面板”,選中“ODBC”,在“系統(tǒng)DSN”下選“添加”,選定數(shù)據(jù)庫種類、名稱、位置等。該實例數(shù)據(jù)庫種類是“SQL Server”,名稱是teacher。

2.創(chuàng)建ADO的對象

ASP技術(shù)中的ADO對象組件作為用戶快速訪問數(shù)據(jù)庫的最簡便方式,只要使用ADO中的兩個最基本的對象Connection和Recordset對象,就能夠?qū)崿F(xiàn)對數(shù)據(jù)庫的訪問。具體來說,Connection對象的功能是建立和特定數(shù)據(jù)庫的連接,而Recordset對象的功能則是取得從該數(shù)據(jù)庫中返回的查詢數(shù)據(jù)。首先,應(yīng)為Connection和Recordset對象創(chuàng)建各自的對象實例:

<%SetConn=Server.CreateObject(”ADODB.Connection”)%>

<%SetRS=Server.CreateObject(”ADODB.Recordset”)%>

其中,RS和Conn分別是對象實例名稱,用戶可以自行定義。這樣就成功地創(chuàng)建了兩個空的Connection和Recordset對象。

3.建立與數(shù)據(jù)庫的連接

使用Connection對象的Open方法建立與特定數(shù)據(jù)庫的連接,Connection對象的Open方法有3個參數(shù)選項,分別為目標(biāo)數(shù)據(jù)庫的名稱、登錄用戶名和口令,語法為ConnOpenConnectionString,UserID,Password。其中,ConnectionString參數(shù)表示與數(shù)據(jù)源建立的相關(guān)信息,如果用戶已經(jīng)成功建立了該數(shù)據(jù)庫的DNS,就可以直接的使用該DNS。另外兩個參數(shù)登錄用戶名和口令為可選項,如果用戶在建立數(shù)據(jù)連接的DNS時已經(jīng)設(shè)定了登錄用戶名和口令,就可以省略這兩個參數(shù)項。在此,用戶使用Connection對象的Open方法與teacher數(shù)據(jù)庫建立連接,具體形式為<% Conn.Open “teacher”%>。

4.使用Recrodset對象獲取數(shù)據(jù)

用戶希望取得teacher數(shù)據(jù)庫中Information數(shù)據(jù)表中的所有數(shù)據(jù),因此使用最簡單的“Select * From Information”即可。為了使代碼更直觀,容易修改和維護(hù),建議用戶將上述的SQL語句用某個變量代替。具體為

<% SQL=”Select * From Information”%>

其中,SQL為變量名,用戶可以自行定義,然后使用Connection對象中的Execute方法執(zhí)行該SQL語句,并將結(jié)果輸入到Recordset對象中,具體為:

<% SetRS=Conn.Execute(SQL)%>

至此,ADO從數(shù)據(jù)庫中查詢到的所有數(shù)據(jù)被保存到Recordset對象中。

5.檢驗Recordset對象是否為空

在對Recordset對象中的數(shù)據(jù)進(jìn)行進(jìn)一步處理之前,建議用戶最好驗證一下是否確實將查詢結(jié)果數(shù)據(jù)保存到了Recordset對象中。用戶可以使用Recordset對象的BOF和EOF屬性實現(xiàn)驗證功能。BOF如果為真則代表數(shù)據(jù)指正位于首行數(shù)據(jù)之前,如果EOF為真則代表為數(shù)據(jù)指正位于末行數(shù)據(jù)之后,如果兩者皆為真,則說明Recordset對象為空。具體代碼為:

<% if (RS.EOF and RS.BOF) then

response.write “NO records found”

end if %>

6.處理Recordset對象數(shù)據(jù)

在驗證Recordset對象中確實含有查詢返回數(shù)據(jù)之后,用戶就可以按照自己的需要對數(shù)據(jù)進(jìn)行響應(yīng)的處理。通常較為常用的Recordset命令為:

Recordset.Fields.Count:Recordset對象的列數(shù);

Recordset(I).Name:第I列名稱,I由0到Recordset.Fields.Count-1;

Recordset(I)第I列數(shù)據(jù),I由0到Recordset.Fields.Count-1;

Recordset(“列名稱”):讀取指定列的數(shù)據(jù);

Recordset.MoveNext:數(shù)據(jù)指針下移一行;

Recordset.MovePrev:數(shù)據(jù)指針上移一行;

Recordset.MoveFirst:數(shù)據(jù)指針移到第一行;

Recrodset.MoveLast:數(shù)據(jù)指針移到最末一行。

接下來的問題是如何將Recordset對象中的數(shù)據(jù)顯示出來。如果用戶希望以表格的形式顯示數(shù)據(jù),則首先需要ASP頁面中建立表格標(biāo)簽:

,然后用戶需要將表中第一行的各列數(shù)據(jù)名稱顯示出來。在此用戶通過Recordset(I).Name命令實現(xiàn):

<% FOR I=0 to RS.Fields.Count-1 %>

<% Next %>

在設(shè)定了首行各列名稱之后,用戶就可以依次把相應(yīng)的數(shù)據(jù)填充到表格當(dāng)中。

<% DoWhileNot RS.EOF %>

<%FOR I=0 to RS.Fields.Count-1 %>

<% RS.MoveNext %>

<% Loop %>

7.正確關(guān)閉對象

在完成對數(shù)據(jù)庫數(shù)據(jù)的查詢和輸出之后,用戶一定不要忘記關(guān)閉打開的對象。關(guān)閉已打開的對象,不僅能夠釋放更多的服務(wù)器資源,而且可以斷開與數(shù)據(jù)庫已建立的連接,從而有效地增強(qiáng)服務(wù)器和數(shù)據(jù)庫對多用戶的支持。用戶可以使用對象的Close方法關(guān)閉對象,將其從內(nèi)存中清除:

<%RS.Close%>

<%Conn.Close%>

(作者單位:江蘇省淮安技師學(xué)院)

<% =RS(I).Name %>

<% =RS(I)%>

猜你喜歡
服務(wù)器端實例名稱
淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
成功(2018年10期)2018-03-26 02:56:14
滬港通一周成交概況
滬港通一周成交概況
滬港通一周成交概況
滬港通一周成交概況
在Windows中安裝OpenVPN
完形填空Ⅱ
完形填空Ⅰ
網(wǎng)頁防篡改中分布式文件同步復(fù)制系統(tǒng)
基于Struts的Web應(yīng)用系統(tǒng)數(shù)據(jù)驗證
娱乐| 富宁县| 勃利县| 象山县| 阳高县| 崇州市| 五原县| 济源市| 延庆县| 鞍山市| 小金县| 武清区| 淳安县| 临朐县| 德州市| 南召县| 建瓯市| 连江县| 长兴县| 沈阳市| 崇信县| 谷城县| 秦皇岛市| 会宁县| 绥江县| 来凤县| 辽宁省| 廉江市| 玉田县| 武义县| 蓬溪县| 耿马| 吴川市| 迭部县| 额济纳旗| 固镇县| 武胜县| 永城市| 兰溪市| 屏边| 廉江市|