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

?

基于ASP和Ajax的音像管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2011-03-10 05:55:54黃悅深
圖書館學(xué)刊 2011年6期
關(guān)鍵詞:音像頁面檢索

黃悅深

(五邑大學(xué)圖書館,廣東 江門 529020)

圖書館應(yīng)用信息技術(shù),根據(jù)館藏情況自建數(shù)據(jù)庫,為用戶提供信息服務(wù)正是潮流所趨。為了提高本館音像資料的管理效率,讓用戶隨時(shí)了解館藏音像情況,筆者設(shè)計(jì)了一個(gè)音像管理系統(tǒng)。該系統(tǒng)以ASP為搭建平臺(tái),構(gòu)建了音像信息編輯器,實(shí)現(xiàn)了在線動(dòng)態(tài)發(fā)布和音像信息維護(hù),并建立了基于Ajax的音像查詢功能。

1 ASP和Ajax應(yīng)用簡(jiǎn)介

ASP全稱Active Server Page,是微軟公司開發(fā)的基于Windows NT Server和IIS的服務(wù)器端腳本編寫環(huán)境。它具有無須編譯,直接執(zhí)行;易于編寫;與數(shù)據(jù)庫連接簡(jiǎn)便;源代碼保密等優(yōu)點(diǎn)[1]。ASP提供了6組內(nèi)置對(duì)象,應(yīng)用于常見的Web事務(wù)處理,包括收集瀏覽器請(qǐng)求信息、響應(yīng)瀏覽器以及存儲(chǔ)用戶信息等。ASP支持VBScript和JavaScript腳本語言編寫。在實(shí)際開發(fā)中,開發(fā)者使用腳本語言結(jié)合調(diào)用ASP內(nèi)置對(duì)象,編寫具體的邏輯處理過程。ASP簡(jiǎn)單易用,特別適用于中、小型的B/S系統(tǒng)開發(fā),這是本系統(tǒng)選用ASP作為開發(fā)環(huán)境的原因。

Ajax是Asynchronous JavaScript and XML的縮寫。它不是一種新技術(shù)或者新語言,而是一種用于創(chuàng)建更好更快以及交互性更強(qiáng)的Web應(yīng)用程序的技術(shù),它在瀏覽器與Web服務(wù)器之間使用異步數(shù)據(jù)傳輸(HTTP請(qǐng)求),使網(wǎng)頁從服務(wù)器請(qǐng)求少量的信息,而不是整個(gè)頁面。Ajax最為人熟悉的應(yīng)用是Google搜索建議、Google地圖等。Ajax主要包含以下技術(shù):①XHTML+CSS,實(shí)現(xiàn)網(wǎng)頁界面設(shè)計(jì);②DOM(Document Object Model,文檔對(duì)象模型),實(shí)現(xiàn)與各種網(wǎng)頁元素的動(dòng)態(tài)交互;③使用XML和XSLT進(jìn)行數(shù)據(jù)交換;④使用XMLHttpRequest對(duì)象執(zhí)行異步數(shù)據(jù)查詢、檢索;⑤使用JavaScript結(jié)合調(diào)用上述各類對(duì)象,完成整個(gè)邏輯事務(wù)處理過程[2]。

2 系統(tǒng)架構(gòu)及模塊構(gòu)成

考慮到系統(tǒng)開發(fā)和用戶使用的簡(jiǎn)便性,系統(tǒng)采用B/S架構(gòu)模式,系統(tǒng)內(nèi)部則按照業(yè)務(wù)處理流程進(jìn)行模塊化功能設(shè)計(jì)。

2.1 系統(tǒng)架構(gòu)

系統(tǒng)采用數(shù)據(jù)庫、服務(wù)器、瀏覽器3層結(jié)構(gòu)模式。服務(wù)器端選用Windows2000 Server+IIS5.0作為ASP的運(yùn)行環(huán)境。數(shù)據(jù)庫采用微軟Access2003。服務(wù)器和數(shù)據(jù)庫之間的連接采用ADO(ActiveX Data Objects)組件。ADO是微軟公司的一個(gè)用于存取數(shù)據(jù)源的COM組件,它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式的一個(gè)中間層,允許開發(fā)人員編寫訪問數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫是如何實(shí)現(xiàn)的[3]。ASP、ADO、Access三方協(xié)同運(yùn)作,共同構(gòu)建起音像管理系統(tǒng)的后臺(tái)運(yùn)作體系。ASP負(fù)責(zé)接收客戶端請(qǐng)求,處理邏輯代碼,發(fā)起ADO調(diào)用,返回結(jié)果頁面,它是整個(gè)業(yè)務(wù)流程的調(diào)度中心。ADO是連接服務(wù)器和數(shù)據(jù)庫的接口,它負(fù)責(zé)連接數(shù)據(jù)庫以及執(zhí)行SQL操作。Access是數(shù)據(jù)存儲(chǔ)中心。系統(tǒng)的完整架構(gòu)和運(yùn)作過程如圖1所示。

圖1 音像管理系統(tǒng)架構(gòu)及業(yè)務(wù)流程

2.2 系統(tǒng)內(nèi)部模塊

系統(tǒng)遵循模塊化設(shè)計(jì)思想,以功能塊為單位進(jìn)行程序編寫,目的是降低程序復(fù)雜度,使程序設(shè)計(jì)、調(diào)試和維護(hù)等操作簡(jiǎn)單化。根據(jù)功能劃分,本系統(tǒng)共有4個(gè)子模塊,包括用戶界面、管理員登錄模塊、音像管理模塊以及音像查找模塊。每個(gè)子模塊下再劃分出具體的功能模塊,每個(gè)功能模塊對(duì)應(yīng)實(shí)現(xiàn)一個(gè)業(yè)務(wù)處理流程。圖2描述了系統(tǒng)的模塊組成。

圖2 系統(tǒng)模塊構(gòu)成

3 功能實(shí)現(xiàn)

3.1 數(shù)據(jù)庫結(jié)構(gòu)

數(shù)據(jù)庫包含Admin、Disc、Bigclass、Smallclass4個(gè)表。Admin表記錄了管理員的登錄賬戶和密碼。Disc表記錄了音像的信息。Bigclass和Smallclass兩個(gè)表分別記錄了音像的大類和小類的劃分情況。表1列出了Disc表結(jié)構(gòu)。

表1 Disc表結(jié)構(gòu)

3.2 用戶界面設(shè)計(jì)與實(shí)現(xiàn)

用戶界面即系統(tǒng)的前臺(tái)部分,是用戶與后臺(tái)發(fā)生數(shù)據(jù)交互的界面。用戶界面按照功能實(shí)現(xiàn)的不同劃分為3個(gè)框架頁面:搜索入口、結(jié)果顯示、分類導(dǎo)航。搜索入口和分類導(dǎo)航框架頁面是用戶向服務(wù)器提交查詢請(qǐng)求的入口(對(duì)應(yīng)圖1第1步)。相應(yīng)地,結(jié)果顯示框負(fù)責(zé)將結(jié)果頁面呈現(xiàn)給用戶(對(duì)應(yīng)圖1第6步)。采用框架式設(shè)計(jì)的優(yōu)點(diǎn)是,頁面各個(gè)組成部分是獨(dú)立的,任一框架內(nèi)的數(shù)據(jù)更新不需要刷新整個(gè)頁面。當(dāng)用戶多次向服務(wù)器提交查詢請(qǐng)求時(shí),結(jié)果顯示框需要多次更新顯示新的結(jié)果集,但是頁面的其他部分無需刷新,有利于減少服務(wù)器負(fù)荷。框架式頁面實(shí)現(xiàn)代碼如下:

3.3 后臺(tái)管理

①管理員登錄模塊既是用戶進(jìn)入后臺(tái)的入口,也是保護(hù)后臺(tái)系統(tǒng)安全的門戶。為了防止非管理員用戶惡意破解系統(tǒng),登錄模塊采用了一系列安全驗(yàn)證措施,包括限定IP段登錄、輸入登錄驗(yàn)證碼、防SQL注入檢驗(yàn)、防未登錄用戶訪問后臺(tái)頁面。

程序代碼如下:

②音像管理模塊實(shí)現(xiàn)了音像管理的全部功能,包括信息錄入、音像分類、發(fā)布、修改、刪除。信息錄入模塊除了提供基本的信息錄入框外,還支持圖片插入、文件上傳、頁面再編輯等高級(jí)功能。為了方便進(jìn)行頁面編輯,模塊內(nèi)嵌了word編輯器。用戶可以對(duì)輸入的文本內(nèi)容進(jìn)行文檔格式設(shè)置,包括字體、大小、顏色、樣式等,還可以插入表格和超鏈接。音像的添加、刪除等操作通過服務(wù)器調(diào)用ADO組件來完成。ADO組件通過構(gòu)建Connection對(duì)象進(jìn)行數(shù)據(jù)庫的連接和執(zhí)行SQL查詢操作,完成對(duì)Disc表記錄的添加、修改、刪除操作。

③音像查找是重要的功能支撐模塊,其代碼必須具備良好的邏輯結(jié)構(gòu),才能為前臺(tái)用戶檢索功能提供充分的支持。為了支持多途徑檢索(提供6種檢索途徑:按音像大類、小類、音像名稱、音像簡(jiǎn)介、出版年份、名稱首字母)的需要,代碼的邏輯組織采用Switch結(jié)構(gòu),包括6個(gè)分支,每個(gè)分支處理一種檢索途徑。檢索過程是:服務(wù)器通過ADO調(diào)用Connection對(duì)象構(gòu)建不同查詢字段的SQL表達(dá)式,再執(zhí)行數(shù)據(jù)庫查詢操作(對(duì)應(yīng)圖1第3步)。待數(shù)據(jù)庫返回結(jié)果后,調(diào)用ADO組件的Recordset對(duì)象讀取記錄(對(duì)應(yīng)圖1第5步)。最后由結(jié)果顯示模塊構(gòu)建結(jié)果頁面返回用戶(對(duì)應(yīng)圖1第6步)。

為了提供更加友好的查找功能,筆者應(yīng)用Ajax構(gòu)建了類似Google搜索提示的音像查找提示功能。實(shí)現(xiàn)步驟如下:①構(gòu)建XMLHttpRequest對(duì)象。在無刷新網(wǎng)頁的情況下,通過on-KeyUp事件觸發(fā)ajaxFunction函數(shù)。②向服務(wù)器發(fā)出訪問請(qǐng)求。ajaxFunction函數(shù)首先判斷檢索詞輸入框是否有新內(nèi)容輸入,如果有,則創(chuàng)建XMLHttpRequest對(duì)象,并通過該對(duì)象的open()方法向服務(wù)器發(fā)出通信請(qǐng)求。③服務(wù)器返回html文本。服務(wù)器將訪問請(qǐng)求交給getSuggest.asp頁面處理。getSuggest.asp從保存有全部音像信息的XML文檔中讀取音像名稱標(biāo)簽的文本內(nèi)容,并以html文本格式返回。getmessage函數(shù)接收返回結(jié)果,并顯示在檢索詞輸入框下方。

程序代碼如下:

4 音像查詢功能在OPAC的集成應(yīng)用

當(dāng)前,關(guān)于館藏資源、網(wǎng)絡(luò)資源以及第三方資源在OPAC的集成應(yīng)用正是研究熱點(diǎn)。整合手段除了原有的購買軟件商的資源整合平臺(tái)或者是對(duì)MARC字段的利用以外,通過利用各種Open API,以及各種Web 2.0技術(shù)成為流行的集成技術(shù)[4]。為了提高音像資源的可發(fā)現(xiàn)性,筆者在本館的OPAC檢索頁面集成了音像查詢。構(gòu)建思路是:當(dāng)用戶在OPAC檢索頁面輸入一個(gè)主題檢索詞時(shí),服務(wù)器在執(zhí)行原有館藏查詢的同時(shí),也向音像查找模塊發(fā)出查詢請(qǐng)求,并提供結(jié)果顯示鏈接。筆者應(yīng)用JavaScript實(shí)現(xiàn)了上述功能,代碼如下:

上述代碼中,checkbox屬性表示在頁面中增添一個(gè)單選框元素,onclick屬性表示當(dāng)點(diǎn)選單選框時(shí),觸發(fā)后續(xù)代碼的運(yùn)行。這是整段代碼的核心所在,它首先判斷單選框是否選擇,如果已選擇,則執(zhí)行后續(xù)代碼生成指向音像查找結(jié)果的超鏈接。超鏈接標(biāo)簽中指定了音像查詢接口,用戶在OPAC檢索框中輸入的檢索詞將傳遞至該查詢接口。document.showresult.innerHTML語句表示在ID標(biāo)志為showresult的頁面元素(一般為

元素,它的ID可任意命名)中顯示“音像查找結(jié)果”超鏈接。經(jīng)過以上處理后,用戶在點(diǎn)選音像資源單選框后,系統(tǒng)將執(zhí)行館藏資源的檢索,同時(shí)顯示一個(gè)“音像查找結(jié)果”鏈接,實(shí)現(xiàn)了音像查詢功能在OPAC的集成應(yīng)用。

5 結(jié)語

通過筆者的開發(fā)實(shí)踐,深入分析了音像管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過程。本次實(shí)踐不只是實(shí)現(xiàn)了一個(gè)具體的應(yīng)用系統(tǒng),而是為日后自建數(shù)據(jù)庫搭建了一個(gè)系統(tǒng)原型。從這個(gè)意義上講,本系統(tǒng)是日后深入研究的起點(diǎn)。今后,筆者主要研究從3方面改進(jìn)系統(tǒng)功能,使其能夠作為一個(gè)通用平臺(tái),為圖書館自建各類數(shù)據(jù)庫提供有力支撐。①應(yīng)用Lucene全文搜索軟件包增強(qiáng)系統(tǒng)的分詞、索引和搜索能力。②應(yīng)用更多的Web 2.0技術(shù)擴(kuò)展系統(tǒng)功能,改善用戶體驗(yàn)。③自建數(shù)據(jù)庫與OPAC無縫整合的實(shí)現(xiàn)技術(shù)。

[1]周峰,徐曉軍,李德路.ASP開發(fā)技術(shù)原理與實(shí)踐教程[M].北京:電子工業(yè)出版社,2007.

[2]陳鋒敏.Ajax原理與系統(tǒng)開發(fā)[M].北京:清華大學(xué)出版社,2009.

[3]Sceppa D著.ADO編程技術(shù)[M].石均等譯.北京:清華大學(xué)出版社,2001.

[4]王海.基于OPAC的資源整合創(chuàng)新研究與實(shí)踐[J].圖書館理論與實(shí)踐,2010(10):74-76.

猜你喜歡
音像頁面檢索
刷新生活的頁面
廣西金海灣電子音像出版社
海外星云(2021年6期)2021-10-14 07:20:48
2019年第4-6期便捷檢索目錄
專利檢索中“語義”的表現(xiàn)
專利代理(2016年1期)2016-05-17 06:14:36
An Exploration of the Theme in “Paste” by Henry James
黃梅戲的音響化、音像化與歌曲化
中華戲曲(2016年2期)2016-01-22 08:19:47
音像超市
音樂周刊(2011年1期)2011-08-16 03:32:14
同一Word文檔 縱橫頁面并存
淺析ASP.NET頁面導(dǎo)航技術(shù)
國際標(biāo)準(zhǔn)檢索
晋宁县| 洪泽县| 阳新县| 海口市| 余姚市| 灵川县| 雷山县| 呼伦贝尔市| 克拉玛依市| 福贡县| 沙河市| 云和县| 古丈县| 汨罗市| 江陵县| 南丰县| 辰溪县| 阳春市| 永昌县| 织金县| 连城县| 乌鲁木齐县| 沧源| 永胜县| 澄迈县| 内黄县| 凉城县| 德阳市| 鄂尔多斯市| 商南县| 霍山县| 建始县| 特克斯县| 铁岭市| 兴文县| 丹凤县| 邢台市| 五台县| 富蕴县| 蒲江县| 牡丹江市|