• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      在線數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      2014-02-28 10:07:34姚文斌
      教育教學(xué)論壇 2014年43期
      關(guān)鍵詞:數(shù)據(jù)庫系統(tǒng)應(yīng)用層調(diào)用

      姚文斌,盧 亮

      (1.北京郵電大學(xué) 智能通信軟件與多媒體北京市重點(diǎn)實(shí)驗(yàn)室,北京 100876;2.北京郵電大學(xué) 計(jì)算機(jī)學(xué)院,北京 100876)

      在線數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      姚文斌1,2,盧 亮1,2

      (1.北京郵電大學(xué) 智能通信軟件與多媒體北京市重點(diǎn)實(shí)驗(yàn)室,北京 100876;2.北京郵電大學(xué) 計(jì)算機(jī)學(xué)院,北京 100876)

      為了提高數(shù)據(jù)庫基礎(chǔ)知識(shí)教學(xué)的質(zhì)量,教師常常在課堂教學(xué)中演示數(shù)據(jù)庫操作,但是數(shù)據(jù)庫環(huán)境的部署往往費(fèi)時(shí)費(fèi)力。在線數(shù)據(jù)庫系統(tǒng)基于B/S模式,可集成多種數(shù)據(jù)庫環(huán)境,僅用瀏覽器即可完成基本數(shù)據(jù)庫操作,為初學(xué)者提供了方便,提高了數(shù)據(jù)庫教學(xué)的效率。

      數(shù)據(jù)庫;在線數(shù)據(jù)庫系統(tǒng);B/S模式

      在高校計(jì)算機(jī)相關(guān)專業(yè)的數(shù)據(jù)庫基礎(chǔ)知識(shí)的教學(xué)過程中(如《大學(xué)計(jì)算機(jī)基礎(chǔ)》、《數(shù)據(jù)庫系統(tǒng)》等課程),教師通常需要部署數(shù)據(jù)庫環(huán)境完成數(shù)據(jù)庫的演示和講解,傳統(tǒng)的數(shù)據(jù)庫軟件大都基于C/S架構(gòu),版本眾多、安裝步驟各異,而且不同的軟件對(duì)多用戶、遠(yuǎn)程連接等功能的支持程度也各不相同,教師面臨著耗費(fèi)精力進(jìn)行數(shù)據(jù)庫部署的問題。同時(shí)由于課堂演示計(jì)算機(jī)的性能和系統(tǒng)環(huán)境往往不確定,教師甚至每節(jié)課前都需要完成數(shù)據(jù)庫環(huán)境的部署,這使課堂教學(xué)質(zhì)量受到了制約。而學(xué)生在課下練習(xí)時(shí),同樣需要安裝部署數(shù)據(jù)庫環(huán)境,復(fù)雜煩瑣的步驟(例如SqlServer)在一定程度影響了其學(xué)習(xí)積極性。面對(duì)數(shù)據(jù)庫教學(xué)中的這些問題,我們?cè)O(shè)計(jì)實(shí)現(xiàn)了在線數(shù)據(jù)庫系統(tǒng),該系統(tǒng)采用B/S模式,服務(wù)器端可以部署集成多種傳統(tǒng)的關(guān)系數(shù)據(jù)庫軟件,使用戶可以在瀏覽器端完成對(duì)多種關(guān)系數(shù)據(jù)庫的基本操作,完全擺脫了復(fù)雜的客戶端。本文所提出的在線數(shù)據(jù)庫系統(tǒng),可以減輕教師的負(fù)擔(dān),為數(shù)據(jù)庫初學(xué)者提供方便,從而提高數(shù)據(jù)庫教學(xué)的效率。

      一、系統(tǒng)架構(gòu)和功能設(shè)計(jì)

      在線數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)的關(guān)鍵在于支持大部分常用的關(guān)系數(shù)據(jù)庫軟件,對(duì)用戶輸入的數(shù)據(jù)庫操作信息進(jìn)行檢查和過濾,然后把服務(wù)端數(shù)據(jù)庫操作結(jié)果用友好的界面展示給用戶。

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

      系統(tǒng)的整體架構(gòu)如圖1所示,其中最上層為Web接口,提供用戶訪問的Web接口和友好的界面。中間層中的數(shù)據(jù)安全、權(quán)限驗(yàn)證這些基本模塊驗(yàn)證用戶請(qǐng)求的權(quán)限,并完成數(shù)據(jù)操作安全的處理,然后調(diào)用下一層的相關(guān)功能響應(yīng)用戶請(qǐng)求;用戶管理是對(duì)用戶基本信息的增刪改查,數(shù)據(jù)庫管理完成對(duì)系統(tǒng)中數(shù)據(jù)庫信息的管理,該層通過調(diào)用數(shù)據(jù)庫訪問層完成數(shù)據(jù)庫的基本操作,然后將其結(jié)果返回給上層。系統(tǒng)中可同時(shí)部署多種不同的數(shù)據(jù)庫軟件,數(shù)據(jù)庫訪問層提供了對(duì)不同數(shù)據(jù)庫的統(tǒng)一訪問接口。

      系統(tǒng)用戶分為普通用戶和管理員兩類,系統(tǒng)為用戶提供的主要功能如圖2所示。

      1.用戶功能:普通用戶注冊(cè)、登錄、注銷,查看個(gè)人的權(quán)限、操作歷史等信息,并可以修改密碼和個(gè)人資料。

      2.數(shù)據(jù)庫功能:普通用戶從系統(tǒng)提供的多種數(shù)據(jù)庫軟件中進(jìn)行選擇,提交自己需要完成的數(shù)據(jù)庫操作命令并查看運(yùn)行結(jié)果。

      圖2 系統(tǒng)功能模塊圖

      3.管理員功能:管理員對(duì)普通用戶的信息進(jìn)行增刪改查,并管理數(shù)據(jù)庫軟件的加入和退出,配置數(shù)據(jù)庫軟件的基本信息,管理數(shù)據(jù)庫軟件的加入和退出。

      整個(gè)系統(tǒng)以Web服務(wù)的形式在服務(wù)器中進(jìn)行部署,然后由系統(tǒng)維護(hù)人員在服務(wù)器上安裝數(shù)據(jù)庫軟件以提供服務(wù)端的數(shù)據(jù)庫服務(wù)。系統(tǒng)管理員登錄系統(tǒng)進(jìn)行數(shù)據(jù)庫的基本配置,最后用戶使用瀏覽器訪問系統(tǒng),即可完成對(duì)數(shù)據(jù)庫表、視圖、存儲(chǔ)過程等內(nèi)容的操作。

      二、系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)

      系統(tǒng)基于B/S架構(gòu),以跨平臺(tái)性強(qiáng)的Java語言作為開發(fā)語言,充分利用了Java技術(shù)在Web開發(fā)中的優(yōu)點(diǎn),采用了流行的Spring3和Struts2作為Web框架,可迅速完成其開發(fā)、部署和測(cè)試。系統(tǒng)分為前端和后端兩部分,按照MVC設(shè)計(jì)思想,系統(tǒng)的整體架構(gòu)可更詳細(xì)地劃分為頁面顯示層、應(yīng)用層、服務(wù)層、模型層、數(shù)據(jù)持久化層、數(shù)據(jù)庫連接層這六層。下面結(jié)合圖3對(duì)各個(gè)層的設(shè)計(jì)進(jìn)行詳細(xì)介紹。

      圖3 系統(tǒng)類圖

      頁面顯示層:基于JSP,采用包括CSS層疊樣式表和JavaScript在內(nèi)的多種動(dòng)態(tài)網(wǎng)頁制作技術(shù)實(shí)現(xiàn)的Web頁面。頁面顯示層將用戶請(qǐng)求通過HTTP協(xié)議傳遞給服務(wù)器端的應(yīng)用層,并將服務(wù)端返回的結(jié)果在瀏覽器中顯示出來,頁面顯示層完成與用戶的全部交互。

      應(yīng)用層:對(duì)應(yīng)于圖3中的Action包(“包”是Java中功能相似或相關(guān)的類和接口的集合),其中基類BaseAction類封裝了獲取web頁面請(qǐng)求參數(shù)、過濾非法數(shù)據(jù)以及驗(yàn)證用戶權(quán)限的基本方法,對(duì)于來自Web頁面的HTTP請(qǐng)求,首先獲取其中的請(qǐng)求參數(shù)中所包含的用戶信息及數(shù)據(jù)庫操作信息,然后對(duì)用戶權(quán)限進(jìn)行校驗(yàn),對(duì)數(shù)據(jù)庫操作信息進(jìn)行檢查,防止SQL注入攻擊。AuthenticationAction類提供用戶注冊(cè)、登錄、退出等功能方法,UserAction類提供用戶增刪改查管理的功能方法,DataBaseAction類提供數(shù)據(jù)庫信息管理的功能方法。應(yīng)用層的類調(diào)用服務(wù)層的類實(shí)現(xiàn)系統(tǒng)功能,為頁面顯示層服務(wù),是整個(gè)系統(tǒng)服務(wù)端的應(yīng)用功能的總接口。

      服務(wù)層:對(duì)應(yīng)于與圖3中的Service包,其中包含數(shù)據(jù)庫服務(wù)和用戶服務(wù)兩部分,應(yīng)用層通過接口IDatabaseService和IUserService來調(diào)用服務(wù)。接口類的加入,使上層調(diào)用服務(wù)層功能方法的類與服務(wù)層具體的實(shí)現(xiàn)類隔離開來。Userservice類通過調(diào)用下層的IUserDao接口完成用戶信息管理,DatabaseService類通過調(diào)用下層的IDatabaseDao和IDbConnect實(shí)現(xiàn)數(shù)據(jù)庫信息的管理,以及數(shù)據(jù)庫的訪問操作。

      數(shù)據(jù)持久化層:對(duì)應(yīng)于圖3的DAO包,包含DatabaseDao和UserDao兩部分,將系統(tǒng)中的用戶信息以及數(shù)據(jù)庫信息持久化到系統(tǒng)數(shù)據(jù)庫中,在訪問數(shù)據(jù)庫時(shí)需要調(diào)用DbOperation包中的接口。

      數(shù)據(jù)庫連接層:對(duì)應(yīng)于圖3的DbOperation包,由于系統(tǒng)中可以部署多種不同的數(shù)據(jù)庫軟件,需要有相應(yīng)的類完成與其的連接,這些類均繼承IDbConnect接口以保持一致。數(shù)據(jù)庫連接類基于JDBC技術(shù),實(shí)現(xiàn)了與多種關(guān)系數(shù)據(jù)庫的連接、驗(yàn)證和SQL服務(wù)調(diào)用,并將其中的基本方法進(jìn)行了封裝和擴(kuò)展,使其更加靈活易用。

      模型層:對(duì)應(yīng)于圖3的Model包,其中的類均是對(duì)一些基本屬性的封裝,Database類封裝數(shù)據(jù)庫軟件名稱、數(shù)據(jù)庫名稱、SQL語句等信息,User類封裝普通用戶的用戶名、密碼、權(quán)限等信息,Admin封裝了管理員的用戶名、密碼等信息。應(yīng)用層、服務(wù)層和數(shù)據(jù)持久層都對(duì)模型層有依賴關(guān)系。

      此外,系統(tǒng)對(duì)于在應(yīng)用層和服務(wù)層中出現(xiàn)的異常也進(jìn)行了封裝,對(duì)所有的異常進(jìn)行統(tǒng)一管理(見圖3的Exception包)。系統(tǒng)的分層設(shè)計(jì),使程序的各模塊之間高內(nèi)聚、低耦合的特性增強(qiáng),符合軟件工程的基本思想,使系統(tǒng)的架構(gòu)趨于穩(wěn)定,更能適應(yīng)需求的變化。

      三、系統(tǒng)運(yùn)行與測(cè)試

      1.運(yùn)行環(huán)境。系統(tǒng)的運(yùn)行環(huán)境如表1所示,其中服務(wù)器端的配置為系統(tǒng)目前部署測(cè)試時(shí)所采用的配置。

      表1 系統(tǒng)運(yùn)行環(huán)境

      2.功能測(cè)試。按照軟件測(cè)試的基本步驟,采用黑盒測(cè)試的錯(cuò)誤推測(cè)法和錯(cuò)誤推測(cè)法對(duì)系統(tǒng)的各個(gè)功能模塊進(jìn)行測(cè)試,以測(cè)試用戶登錄模塊為例,預(yù)期當(dāng)在界面中輸入用戶名或密碼錯(cuò)誤時(shí),頁面提示“用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入”,并不進(jìn)行頁面跳轉(zhuǎn),正確時(shí)跳轉(zhuǎn)到系統(tǒng)主頁面,經(jīng)測(cè)試實(shí)際輸出結(jié)果與預(yù)期一致。

      3.性能測(cè)試。對(duì)系統(tǒng)的性能測(cè)試采用負(fù)載測(cè)試和壓力測(cè)試相結(jié)合的方法展開,選取每分鐘增加若干用戶請(qǐng)求和混合加壓作為測(cè)試數(shù)據(jù)。測(cè)試的結(jié)果表明系統(tǒng)可支持2500用戶并且響應(yīng)時(shí)間小于3秒,壓力測(cè)試結(jié)果顯示CPU和內(nèi)存占用率在86%和88%以內(nèi)。

      四、總結(jié)與展望

      本文所設(shè)計(jì)和實(shí)現(xiàn)的在線數(shù)據(jù)庫系統(tǒng),立足于簡(jiǎn)化在數(shù)據(jù)庫基礎(chǔ)知識(shí)教學(xué)過程中數(shù)據(jù)庫環(huán)境搭建的煩瑣步驟,為教師和初學(xué)者提供簡(jiǎn)單方便在線的關(guān)系數(shù)據(jù)庫服務(wù)。系統(tǒng)架構(gòu)合理,運(yùn)行狀況穩(wěn)定,簡(jiǎn)單易操作,從目前的反饋結(jié)果來看,系統(tǒng)在一定程度上提高了課堂教學(xué)質(zhì)量,可以推廣使用。但是,系統(tǒng)在用戶數(shù)據(jù)庫操作結(jié)果的頁面顯示效果還需要優(yōu)化,用戶權(quán)限控制等方面仍存在不足,同時(shí)教師在實(shí)踐過程中發(fā)現(xiàn)了數(shù)據(jù)庫在線測(cè)試試題、學(xué)生與教師互動(dòng)等新的需求,這將是系統(tǒng)下一步改進(jìn)與完善的方向。

      G642.0

      A

      1674-9324(2014)43-0064-03

      北京郵電大學(xué)教學(xué)改革項(xiàng)目

      猜你喜歡
      數(shù)據(jù)庫系統(tǒng)應(yīng)用層調(diào)用
      核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
      LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
      數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
      微細(xì)銑削工藝數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)與開發(fā)
      基于分級(jí)保護(hù)的OA系統(tǒng)應(yīng)用層訪問控制研究
      基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
      實(shí)時(shí)數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)安全采集方案
      新一代雙向互動(dòng)電力線通信技術(shù)的應(yīng)用層協(xié)議研究
      核反應(yīng)堆材料數(shù)據(jù)庫系統(tǒng)及其應(yīng)用
      物聯(lián)網(wǎng)技術(shù)在信息機(jī)房制冷系統(tǒng)中的應(yīng)用
      遂宁市| 吉林省| 黄平县| 保德县| 平定县| 新昌县| 岢岚县| 古浪县| 越西县| 曲水县| 五家渠市| 新疆| 乌海市| 武平县| 嘉定区| 东乌珠穆沁旗| 横峰县| 海盐县| 丽水市| 农安县| 西藏| 新丰县| 巍山| 香港| 延安市| 普格县| 容城县| 荔波县| 鄢陵县| 平陆县| 竹溪县| 迁西县| 陕西省| 道真| 乡宁县| 黄梅县| 株洲市| 黔南| 闵行区| 大渡口区| 盘山县|