




已閱讀5頁(yè),還剩55頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于 web 在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 基于計(jì)算機(jī)網(wǎng)絡(luò)的現(xiàn)代遠(yuǎn)程教育是一種新興的教學(xué)手段 本文從遠(yuǎn)程教育發(fā)展過(guò) 程出發(fā) 闡述了遠(yuǎn)程教育的背景 分析了遠(yuǎn)程教育目前的狀況和未來(lái)的發(fā)展趨勢(shì) 并 且對(duì)基于web的在線考試及考試評(píng)測(cè)系統(tǒng)進(jìn)行了分析和設(shè)計(jì) 從開(kāi)始的需求分析到數(shù)據(jù) 庫(kù)和頁(yè)面設(shè)計(jì)都以方便使用者為目的 突出網(wǎng)絡(luò)遠(yuǎn)程教育的特點(diǎn) 做到直觀 方便 通過(guò)B S模式基本上可以實(shí)現(xiàn)考試的所有功能 用ASP技術(shù)來(lái)實(shí)現(xiàn) 后臺(tái)數(shù)據(jù)庫(kù)采用 Access技術(shù) 通過(guò)ASP與Access的結(jié)合 用戶很方便通過(guò)瀏覽器操作 而數(shù)據(jù)的后臺(tái)操 作則由服務(wù)器端處理 這樣提高了網(wǎng)頁(yè)的互動(dòng)性 使整個(gè)系統(tǒng)能更好的為用戶服務(wù) 相信隨著網(wǎng)絡(luò)技術(shù)的發(fā)展 遠(yuǎn)程教育將更為突出的顯現(xiàn)出資源共享和優(yōu)勢(shì)互補(bǔ)的特點(diǎn) 關(guān)鍵字 遠(yuǎn)程教育 考試系統(tǒng) ASP Access 計(jì)算機(jī)安全 Web based Online Examination System Design and Implementation Abstract It is a kind of newly arisen teaching means according to the modern long range education of calculator network This text sets out from the development process of the long range education elaborating the long range educational background analyzing long range to educate current condition and future development trend and to according to web of on line examination and examination the measured system to carry on analysis and design Analyze the database and page designers to all take convenient user as a purpose from the need of with beginning outstanding educational characteristics of the network long range attain to keep a view convenience Pass B S Using ASP technology to achieve background database using Access technology through a combination of ASP and Access users easily through the browser operation and data from the background operation of the server side processing such enhanced interactive website so that the whole system can better services for users They believed that with the development of network technology and distance education will be more prominent showing resource sharing and complementary characteristics Keyword distance education examination system ASP Access computer security 目 錄 1 緒 論 1 1 1 在線考試的背景介紹 1 1 2 需求分析 1 2 相關(guān)技術(shù)分析 3 2 1 ASP 介紹 3 2 1 1 ASPASP 的版本 3 2 1 2 Windows 2000 COM 和 ASP 3 0 4 2 1 3 ASP 和下一代 Web 服務(wù)框架 4 2 1 4 新一代 Web Services 框架 4 2 1 5 一些 ASP 的一些特點(diǎn) 5 2 2 數(shù)據(jù)庫(kù)的介紹 7 2 2 1 數(shù)據(jù)庫(kù)模型 8 2 2 2 數(shù)據(jù)庫(kù)管理 9 2 2 3 數(shù)據(jù)庫(kù)的建立 9 2 3 ADO 連接技術(shù) 9 2 3 1 使用 UDL 文件來(lái)創(chuàng)建 ADO 連接 11 2 3 2 創(chuàng)建你所需的 UDL 文件 12 3 系統(tǒng)設(shè)計(jì) 13 3 1 系統(tǒng)整體功能 13 3 2 考試子系統(tǒng)功能設(shè)計(jì) 13 3 2 1 學(xué)生部分的功能設(shè)計(jì) 14 3 2 2 老師部分的功能設(shè)計(jì) 15 3 2 3 管理員部分的功能設(shè)計(jì) 16 3 3 數(shù)據(jù)庫(kù)的設(shè)計(jì)實(shí)現(xiàn) 16 3 3 1 數(shù)據(jù)庫(kù)的選擇 16 3 3 2 數(shù)據(jù)庫(kù)表的設(shè)計(jì) 16 4 用戶界面的設(shè)計(jì)實(shí)現(xiàn) 19 4 1 主界面設(shè)計(jì) 19 4 2 登陸窗口設(shè)計(jì) 20 4 3 管理員使用說(shuō)明介紹 25 5 系統(tǒng)實(shí)現(xiàn) 31 6 難點(diǎn)和解決 32 7 在線考試方式的成本及效益分析 33 結(jié) 論 34 致 謝 35 參考文獻(xiàn) 36 附錄 A 主要窗口源代碼 37 附錄 B 英文資料 50 附錄 C 中文譯文 55 1 緒 論 1 1 在線考試的背景介紹 在線考試 是近幾年來(lái)熱門(mén)的話題 它代表了考試的發(fā)展方向 它是遠(yuǎn)程教育的 重要組成部分 就我國(guó)而言 遠(yuǎn)程教育的發(fā)展經(jīng)歷了三個(gè)歷史階段 第一階段的遠(yuǎn)程 教育即函授教育 其技術(shù)代表和特征是郵政通信和印刷技術(shù) 第二階段遠(yuǎn)程教育是指 在郵政通信和印刷技術(shù)基礎(chǔ)上 利用廣播電視 衛(wèi)星和微波 錄音錄像 電話傳真和 計(jì)算機(jī)以及電信傳播等媒體開(kāi)展的遠(yuǎn)程教育 可以說(shuō)廣播電視 錄音錄像是第二階段 遠(yuǎn)程教育的技術(shù)代表和特征之一 我們常說(shuō)的現(xiàn)代遠(yuǎn)程教育就是指第三階段的遠(yuǎn)程教 育 它是以網(wǎng)絡(luò)為主要形式 基于現(xiàn)代信息技術(shù)和教育技術(shù)的遠(yuǎn)程教育 確切地說(shuō) 現(xiàn)代遠(yuǎn)程教育是在衛(wèi)星電視網(wǎng)絡(luò)和計(jì)算機(jī)網(wǎng)絡(luò)三大通信網(wǎng)絡(luò)環(huán)境下開(kāi)展的遠(yuǎn)程教育 它具有數(shù)字化 多媒體和交互式等顯著的技術(shù)和教學(xué)特征 與之相適應(yīng)的是 隨著科學(xué)技術(shù)的發(fā)展 遠(yuǎn)程教育與在線考試越來(lái)越緊密的聯(lián)系 在一起 在一定程度上 考試采用的方式方法決定了考試系統(tǒng)的功能 決定了考試的管理 方法 因此 選擇符合現(xiàn)代遠(yuǎn)程開(kāi)放教育特點(diǎn)的 適應(yīng)現(xiàn)代社會(huì)發(fā)展特征的考試方式方法 是建立現(xiàn)代遠(yuǎn)程教育考試系統(tǒng)的關(guān)鍵 我們認(rèn)為 具備新型考試系統(tǒng)功能的考試方式是 在線考試 隨著遠(yuǎn)程教育的網(wǎng)絡(luò)化 數(shù)字化 在線考試也變的越來(lái)越實(shí)用 在線考試 是利用現(xiàn)代計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)形成的一種新型考試方式 其最大優(yōu)點(diǎn)是具備了現(xiàn)代遠(yuǎn)程教 育要求的遠(yuǎn)距離考試 隨時(shí)考試的功能 同時(shí) 由于實(shí)行網(wǎng)絡(luò)考試必須建立題庫(kù)系統(tǒng) 因此 這種考試可以大大提高教師的工作效率 也使試題的科學(xué)性有了提高 在線考試基本具備了現(xiàn)代遠(yuǎn)程教育考試系統(tǒng)的功能 現(xiàn)代社會(huì)的發(fā)展也為網(wǎng)絡(luò)考試 的實(shí)現(xiàn)提供了條件和市場(chǎng) 1 2 需求分析 目前我國(guó)社會(huì)已經(jīng)進(jìn)入信息化社會(huì) 信息化社會(huì)加快了人們工作學(xué)習(xí)的節(jié)奏 同時(shí)使 互聯(lián)網(wǎng)技術(shù)在社會(huì)各個(gè)領(lǐng)域得到普及 互聯(lián)網(wǎng)技術(shù)的普及使操作和使用現(xiàn)代設(shè)備 計(jì)算機(jī) 成為人們一種必備的技能 因此 一方面在線考試以它的方便 快捷適應(yīng)了信息 社會(huì)發(fā)展的要求 另一方面現(xiàn)代信息社會(huì)的發(fā)展又為在線考試提供了市場(chǎng) 網(wǎng)絡(luò)提倡的 是 資源共享 網(wǎng)絡(luò)遠(yuǎn)程教育是教育發(fā)展到現(xiàn)階段的產(chǎn)物 它是網(wǎng)絡(luò)和教育的結(jié)合體 通過(guò)網(wǎng)絡(luò)遠(yuǎn)程教育可以更好的分享教育資源 分享名校的名師資源 它可以讓學(xué)員按 照自己的時(shí)間和進(jìn)程來(lái)安排學(xué)習(xí) 打破了傳統(tǒng)教育地域和時(shí)間的局限性 而且還節(jié)省 了資源 考試是現(xiàn)階段衡量知識(shí)累積情況和運(yùn)用能力的最簡(jiǎn)捷 最直接的手段 在遠(yuǎn)程教 育中也是如此 通過(guò)在線的考試系統(tǒng) 可以更容易的讓受教育者了解到自己學(xué)習(xí)中的 薄弱環(huán)節(jié) 讓教師掌握學(xué)生的學(xué)習(xí)狀況 考試系統(tǒng)可以采用常見(jiàn)的 B S Browser Server 模式 在 Server 端統(tǒng)計(jì)出學(xué)生的成績(jī) 并存放進(jìn)數(shù)據(jù)庫(kù)保存 這樣以后通過(guò)數(shù)據(jù)庫(kù)的操作就可以直觀的反映出學(xué)生的學(xué)習(xí)情況 以便老師調(diào)整教學(xué) 的重點(diǎn)和方向 通過(guò)考試系統(tǒng) 可以大大的減少教師的勞動(dòng)量 判卷子的工作 90 可 以由計(jì)算機(jī)來(lái)完成 將教師從單調(diào)重復(fù)的作業(yè)中解放出來(lái) 完成一個(gè)考試系統(tǒng) 要具備以下的功能 1 學(xué)生通過(guò) Browser 瀏覽器 完成答題 2 學(xué)生可以把不熟悉的題目做記號(hào)保存 3 老師要可以自由組合試卷和出題 4 系統(tǒng)可以判斷非問(wèn)答題以外的題目的對(duì)錯(cuò) 5 對(duì)學(xué)生成績(jī)等進(jìn)行統(tǒng)計(jì) 圖形化 6 學(xué)生可以查詢自己的成績(jī) 7 教師通過(guò)統(tǒng)計(jì)了解教學(xué)的不足之處 8 管理員可以根據(jù)需要增刪題目等 2 相關(guān)技術(shù)分析 2 1 ASP 介紹 ASP 的歷史其實(shí)并不長(zhǎng) 1996 年首發(fā) 然后迅速發(fā)展為 Windows 環(huán)境下的主流開(kāi) 發(fā)環(huán)境 此外 在其他平臺(tái)上也有第三方廠商開(kāi)發(fā)的模擬環(huán)境 例如 ChilliASP 動(dòng)態(tài)服務(wù)器端 Web 編程 傳統(tǒng)上 動(dòng)態(tài)頁(yè)面由服務(wù)器端可執(zhí)行程序產(chǎn)生 標(biāo)準(zhǔn)的 Web 服務(wù)器界面稱(chēng)為 CGI 基 本原理是讓一個(gè)可執(zhí)行程序取得從客戶端傳過(guò)來(lái)的信息 然后收集輸出信息生成返回頁(yè) 面 HTML script 代碼 文字等 最后發(fā)送到客戶端 后來(lái)出現(xiàn)了例如 Perl 這樣的解釋器 程序員只需編寫(xiě)一些宏代碼 就可以讓服務(wù)器解釋執(zhí)行 微軟 ISAPI 技術(shù) 微軟隨著 IIS 推出了另一個(gè)工具 ISAPI Internet Server Application Programming Interface 其不同于 CGI 的是 ISAPI 允許調(diào)用動(dòng)態(tài)鏈接庫(kù) DLL 許多微軟開(kāi)發(fā)者都曾在 ISAPI 上開(kāi)發(fā)過(guò) 另一個(gè)短命產(chǎn)品叫 dbWeb 提供一定程度的交互式數(shù)據(jù)查詢 過(guò)濾 格式 化功能 第二代開(kāi)發(fā)工具叫 IDC the Internet Database Connector 開(kāi)發(fā)環(huán)境稍有改善 不僅因 為它比 dbWeb 速度更快 效率更高 而且因?yàn)樗褂酶臃奖?IDC 引入模板的概念 讓 程序員更容易地在此基礎(chǔ)上構(gòu)筑應(yīng)用系統(tǒng) 每個(gè)頁(yè)面 IDC 要使用兩個(gè)文件 其中 query 文件包含簡(jiǎn)單的宏語(yǔ)句 定義從數(shù)據(jù)庫(kù)中取得數(shù)據(jù)的方法 實(shí)際上就是 SQL 描述加配置 信息 2 1 1 ASP 的版本 在 1996 年初 Denali ASP 的開(kāi)發(fā)代號(hào) 發(fā)布了 0 9beta 版 在 Web 開(kāi)發(fā)領(lǐng)域掀起了一場(chǎng) 風(fēng)暴 Web 頁(yè)面的制作變得如此簡(jiǎn)單而強(qiáng)大 附帶的一系列組件提供了更先進(jìn)的功能 新 的 ADO ActiveX Data Objects 技術(shù) 建立動(dòng)態(tài)網(wǎng)頁(yè)如同兒戲 最終的發(fā)行版 ASP1 0 是作為 IIS3 0 的組件一起發(fā)布的 與 ADO 技術(shù)的捆綁 無(wú)疑是 ASP 大受歡迎的最主要原因之一 程序員幾乎可以隨心所欲地通過(guò) script 任意打開(kāi) 存取 操 作數(shù)據(jù)庫(kù) 1998 年 作為 WindowsNT4 Optoin Pack 的一部分 微軟推出了 ASP2 0 與 ASP1 0 的主要區(qū)別是 ASP2 0 支持外部組件的調(diào)用 這樣 ASP 應(yīng)用程序可以在單獨(dú)的內(nèi)存空 間中運(yùn)行組件 MTS Microsoft Transaction Server 的引入將組件的運(yùn)行也歸入事務(wù)處理 過(guò)程 2 1 2 Windows 2000 COM 和 ASP 3 0 今年初 Windows2000 推出 包含了 IIS5 0 和 ASP3 0 撇開(kāi)一些細(xì)微的改進(jìn) 最主要的 區(qū)別在于 COM 的運(yùn)行機(jī)制 在 Windows2000 中 微軟將核心 COM 運(yùn)行庫(kù)結(jié)合了 MTS 創(chuàng)建了 COM 使組件的使用更方便 整個(gè)運(yùn)行平臺(tái)更穩(wěn)定 伸縮性更強(qiáng) 效率更高 IIS5 0 在界面上的變化不大 但在底層 改為使用 COM 組件服務(wù) 提供了更佳的組件 運(yùn)行環(huán)境 包括每個(gè)組件可以有自己?jiǎn)为?dú)的進(jìn)程 2 1 3 ASP 和下一代 Web 服務(wù)框架 ASP 的下層結(jié)構(gòu)與 ASP 的以前版本截然不同 盡管從程序員的開(kāi)發(fā)界面上看似曾 相識(shí) ASP 是完完全全地基于組件 并且完全地模塊化 你所使用的每個(gè)頁(yè)面 部件 HTML 元素都可能是一個(gè)單獨(dú)的運(yùn)行組件 新的運(yùn)行環(huán)境將自動(dòng)管理 協(xié)調(diào)系統(tǒng)的運(yùn)行 程序員可 以按照微單元的開(kāi)發(fā)風(fēng)格來(lái)建立功能強(qiáng)大的應(yīng)用系統(tǒng) 面向?qū)ο蟮?ASP 提供了對(duì)環(huán)境的擴(kuò)展 開(kāi)發(fā)者可以通過(guò)新增組件或繼承原組件基 本類(lèi)的方式 增加和擴(kuò)展應(yīng)用環(huán)境 2 1 4 新一代 Web Services 框架 顯然 COM 構(gòu)筑了操作系統(tǒng)運(yùn)行的基本框架 作為一套全新的運(yùn)行環(huán)境 ASP 為 Widnows 中各種類(lèi)型的應(yīng)用程序提供支持 這個(gè)框架也是微軟 NGWS Next Generation Web Services 的關(guān)鍵 一旦你安裝了這個(gè)框架 ASP 就會(huì)成為其中的一個(gè)部分 該框架同 時(shí)支持其它服務(wù)器端編程技術(shù) 例如新的組件管理服務(wù) 建立可執(zhí)行的應(yīng)用和 Windows 服務(wù) 性能統(tǒng)計(jì) API 事件日志 API 等 通過(guò)增加新的和增強(qiáng)分布式服務(wù)來(lái)擴(kuò)充我們現(xiàn)在用于創(chuàng)建可重復(fù)使用的和可同時(shí) 使用的 COM 模塊 這些新的特征包括 一套統(tǒng)一的和豐富的編程庫(kù) 一套安全的和多語(yǔ)言的運(yùn)行庫(kù)引擎 簡(jiǎn)單的創(chuàng)建 開(kāi)發(fā)和維護(hù) 增強(qiáng)分布式應(yīng)用的適用范圍 保護(hù)現(xiàn)有的軟件和培訓(xùn)的投資 2 1 5 一些 ASP 的一些特點(diǎn) 1 使用 VBScript Jscript 等簡(jiǎn)單易懂的腳本語(yǔ)言 結(jié)合 HTML 代碼 即可快 速地完成網(wǎng)站的應(yīng)用程序 2 使用普通的文本編輯器 如 Windows 的記事本 即可進(jìn)行編輯設(shè)計(jì) 3 與瀏覽器無(wú)關(guān) Browser Independence 用戶端只要使用可執(zhí)行 HTML 碼的瀏 覽器 即可瀏覽 ASP 所設(shè)計(jì)的網(wǎng)頁(yè)內(nèi)容 ASP 所使用的腳本語(yǔ)言均在 WEB 服務(wù)器端 執(zhí)行 用戶端的瀏覽器不需要能夠執(zhí)行這些腳本語(yǔ)言 4 ASP 能與任何 ActiveX scripting 語(yǔ)言相容 除了可使用 VBScript 或 Jscript 語(yǔ)言 來(lái)設(shè)計(jì)外 還通過(guò) plug in 插件 的方式 使用由第三方所提供的其他腳本語(yǔ)言 譬 如 Perl 等 腳本引擎是處理腳本程序的 COM Component Object Model 物件 5 ASP 的源程序 不會(huì)被傳到客戶瀏覽器 因而可以避免所寫(xiě)的源程序被他人剽 竊 也提高了程序的安全性 6 可使用服務(wù)器端的腳本來(lái)產(chǎn)生客戶端的腳本 ASP 的基本理念是 如果大多數(shù)公司能夠從服務(wù)供應(yīng)商提供的基礎(chǔ)設(shè)施租用空間 那么他們投資于昂貴的數(shù)據(jù)中心就沒(méi)有多大意義 在設(shè)備建造和管理上 擁有許多客 戶的服務(wù)供應(yīng)商能夠?qū)崿F(xiàn)規(guī)模經(jīng)濟(jì) 降低成本 在提供服務(wù)時(shí)也比自建系統(tǒng)的公司速 度更快 可靠性更高 PHP 和 ASP NET 都可以構(gòu)建復(fù)雜的 Web 應(yīng)用程序 例如電子商務(wù)站點(diǎn) Intranet 和企業(yè)門(mén)戶 但兩者之間卻存在若干重要差別 與 PHP 不同 ASP NET 并 不是一種語(yǔ)言或分析器 而是 Microsoft NET Framework 中的一組用于構(gòu)建 Web 應(yīng) 用程序和 XML Web Service 的技術(shù) 同 PHP 一樣 Microsoft ASP NET 頁(yè)面在服務(wù) 器上執(zhí)行并生成標(biāo)記 例如 HTML WML 或 XML 標(biāo)記將發(fā)送給桌面應(yīng)用程序或 移動(dòng)應(yīng)用程序 但不同的是 ASP NET 為開(kāi)發(fā) Web 頁(yè)面提供了強(qiáng)大的 面向?qū)ο蟮?以及由事件驅(qū)動(dòng)的編程模型 同時(shí)仍保留了 PHP 開(kāi)發(fā)人員所習(xí)慣的那種簡(jiǎn)單性 ASP NET 應(yīng)用程序是基于強(qiáng)大的面向?qū)ο缶幊?OOP 模式 而不是基于腳本模 式 這樣便可以獲得更為嚴(yán)謹(jǐn)?shù)?OOP 功能 例如繼承 封裝和反射 雖然大多數(shù)基 本的簡(jiǎn)單操作可以輕松地從 PHP 轉(zhuǎn)換到 ASP NET 但要轉(zhuǎn)換更為復(fù)雜的應(yīng)用程序卻 并不這么簡(jiǎn)單 這需要仔細(xì)的規(guī)劃和考慮 并采用更符合 OOP 的方法 本文假設(shè)讀者具有 PHP 方面的經(jīng)驗(yàn) 并且對(duì)編程和軟件開(kāi)發(fā)有著基本了解 本 文首先從代碼方面對(duì)兩者的基礎(chǔ)體系結(jié)構(gòu)的差別進(jìn)行簡(jiǎn)單比較 并簡(jiǎn)要介紹一下 OOP 開(kāi)發(fā)模型 然后比較兩者的功能 最后將使用 PHP 和 ASP NET 開(kāi)發(fā) Web 應(yīng)用程序 時(shí)的語(yǔ)法和常見(jiàn)任務(wù)作以對(duì)比 注意 如果您希望跳過(guò)有關(guān)遷移的詳細(xì)信息 而只想嘗試 ASP NET 的使用 則 可以直接跳到建議的后續(xù)操作部分 體系結(jié)構(gòu)對(duì)比 閱讀完本文后 通過(guò)比較語(yǔ)法和語(yǔ)言 您將了解 PHP 和 ASP NET 是很相似的 它們具有類(lèi)似的功能和語(yǔ)法 但是 從更基本的體系結(jié)構(gòu)層面來(lái)講 PHP 與 ASP NET 卻有著很大差別 PHP 基于獨(dú)立于平臺(tái)的處理器 引擎 該處理器 引擎用于 分析 PHP 腳本 提供數(shù)據(jù)庫(kù)連接 符合 Internet 協(xié)議以及提供大多數(shù) Web 應(yīng)用程 序平臺(tái)所常見(jiàn)的眾多其他任務(wù) ASP NET 是基于一系列技術(shù) 如 CLR 構(gòu)建的框架 提供了大量以很好的方式 組織的類(lèi)庫(kù) 這些類(lèi)庫(kù)可滿足要在 Web 應(yīng)用程序中使用的大多數(shù)功能的需要 您還 可以輕松地創(chuàng)建各種組件 對(duì)該框架進(jìn)行擴(kuò)展 雖然 PHP 也提供了類(lèi)似的功能 例如 PEAR 庫(kù) 但 PHP 和 ASP NET 并非完 全相同 因?yàn)?ASP NET 框架是完全基于 OOP 模式和 OOP 概念構(gòu)建的 而 PHP 則不然 這種差別在 PHP 和 ASP NET 中類(lèi)和對(duì)象的訪問(wèn)方式方面表現(xiàn)得猶為明顯 PHP 和 ASP NET 中的面向?qū)ο缶幊?雖然 PHP 和 ASP NET 都為應(yīng)用程序開(kāi)發(fā)提供了 OOP 模式 但它們對(duì)各種 OOP 概念 例如封裝和多態(tài) 的支持卻存在差別 例如 PHP 僅支持部分封裝 例 如 支持在類(lèi)中聲明方法和字段 和部分多態(tài) 沒(méi)有重載和抽象 此外 由于 PHP 的類(lèi)中不存在私有 private 公有 public 或受保護(hù) protected 函數(shù)等概念以及重載 因此 PHP 也不支持這些概念及其訪問(wèn) OOP 純粹主義者可能會(huì)說(shuō) ASP NET 以及 各種語(yǔ)言也沒(méi)有完全支持 OOP 模式中的所有概念 對(duì)于使用 OOP 的大多數(shù)語(yǔ)言 如 C 和 Java 來(lái)說(shuō) 情況確實(shí)如此 這既有積極的一面 也有消極的一面 消極的一面是 對(duì)于某些 Web 開(kāi)發(fā)人員 來(lái)說(shuō) 學(xué)習(xí) ASP NET 要比學(xué)習(xí) PHP 困難些 因?yàn)?PHP 提供的是開(kāi)發(fā)人員創(chuàng)建 Web 站點(diǎn)時(shí)所慣用的腳本模式 但是 使用過(guò) OOP 語(yǔ)言和 或 V 的開(kāi)發(fā)人員會(huì)發(fā)現(xiàn) ASP NET 比較親切且易于學(xué)習(xí) 無(wú)疑 ASP 為那些需要通過(guò)這種新一代外包模式獲得服務(wù)的公司取得了顯著的經(jīng) 濟(jì)效益 至少包括以下幾點(diǎn) 快速安裝 通過(guò) ASP 模式安裝服務(wù)的時(shí)間比那些在內(nèi)部安裝類(lèi)似 IT 功能的公司所 花的時(shí)間少得多 客戶只需進(jìn)入 ASP 早已安裝和測(cè)試好的基礎(chǔ)設(shè)施中 這是安裝電子 商務(wù)消費(fèi)模式最快的方式 降低成本 因?yàn)?ASP 為許多客戶提供服務(wù) 它們能在服務(wù)提供上實(shí)現(xiàn)規(guī)模經(jīng)濟(jì) 而這對(duì)單個(gè)用戶是不可能的 優(yōu)化現(xiàn)金流結(jié)構(gòu) 傳統(tǒng)的 IT 投資在前期需要大額的現(xiàn)金支出 結(jié)果卻是不確定的 收益 由于 IT 項(xiàng)目的高失敗率 而通過(guò) ASP 模式 客戶只需支付適度的安裝費(fèi)用和 服務(wù)提供后的附加支出 這種 訂金式 的計(jì)算方式使收益和風(fēng)險(xiǎn)有了更好的匹配 支持 7 24 運(yùn)作 不像傳統(tǒng)的商業(yè)運(yùn)作 以網(wǎng)絡(luò)為基礎(chǔ)的商業(yè)可以不間斷地持續(xù)運(yùn) 轉(zhuǎn) 但是創(chuàng)建持續(xù)運(yùn)作的基礎(chǔ)設(shè)施和流程需要專(zhuān)業(yè)技術(shù) 而大部分用戶都缺乏此技術(shù) 緩解 IT 人員短缺 許多企業(yè)很難吸引熟練的 IT 員工 特別是對(duì)于中小企業(yè)而言 向 ASP 的外包能夠減少甚至消除對(duì)內(nèi)部 IT 員工的需求 支持移動(dòng)工作組 在 ASP 模式中 軟件功能來(lái)自于遠(yuǎn)方 因此用戶所在的位置無(wú) 關(guān)緊要 只要能夠被系統(tǒng)成功識(shí)別 用戶無(wú)論在哪里都能得到同樣的功能和數(shù)據(jù) 2 2 數(shù)據(jù)庫(kù)的介紹 數(shù)據(jù)庫(kù) 作為短語(yǔ)最早使用的是在 1963 年 6 月 System Development Corporation 贊助舉辦了一個(gè)題為 開(kāi)發(fā)計(jì)算機(jī)管理中心數(shù)據(jù)庫(kù) Development and Management of a Computer centered Data Base 的研討會(huì) 數(shù)據(jù)庫(kù)作為一個(gè)獨(dú)立的單詞大量出現(xiàn)在 70 年代初的歐洲 直到二十世紀(jì)末才被美國(guó)各大報(bào)紙使用 數(shù)據(jù)銀行 Databank 一個(gè)類(lèi) 似的用法 早在 1966 年被華盛頓郵報(bào)所使用 第一數(shù)據(jù)庫(kù)管理系統(tǒng)開(kāi)發(fā)于 1960 這個(gè) 領(lǐng)域的先鋒是 Charles Bachman Bachman 早日文件證明其目的是更有效地利用新型直 接訪問(wèn)存儲(chǔ)設(shè)備 在此之前 數(shù)據(jù)處理是基于穿孔卡片和磁帶 這系列的動(dòng)作主要是 加工活動(dòng) 兩大數(shù)據(jù)模型從那時(shí)起延續(xù)至今 CODASYL 根據(jù) Bachman 的思想開(kāi)發(fā)的 網(wǎng)絡(luò)模型以及 顯然獨(dú)立 應(yīng)用于 North American Rockwell 開(kāi)發(fā)的一個(gè)系統(tǒng)中的等級(jí) 模型 后來(lái)被 IBM 作為他們 IMS 產(chǎn)品的基礎(chǔ) 關(guān)系模型由 E F Codd 于 1970 年提出 他批評(píng)當(dāng)時(shí)的模型結(jié)構(gòu)混亂了信息結(jié)構(gòu)的摘要描述和物力訪問(wèn)機(jī)制的描述 而長(zhǎng)期以 來(lái) 關(guān)系模型依然只引起學(xué)術(shù)上的興趣 同時(shí) CODASYL 系統(tǒng)和 IMS 被視為實(shí)際的工 程學(xué)解決方案 當(dāng)時(shí)采取的關(guān)系模型更處于理論觀點(diǎn)階段 正確的 主張軟 硬件技術(shù) 應(yīng)及時(shí)跟進(jìn) 首先的實(shí)現(xiàn)有伯克利大學(xué)的 Michael Stonebraker 的 Ingres 和 IBM 的 System R 項(xiàng)目 這兩者均是研究圓形 在 1976 年公開(kāi) 第一商業(yè)產(chǎn)品 甲骨文和 DB2 在 1980 年左右面市 第一個(gè)成功的微機(jī)數(shù)據(jù)庫(kù)產(chǎn)品是運(yùn)行于 CP M 和 PC DOS MS DOS 操作系統(tǒng)上的 dBASE 20 世紀(jì) 80 年代 研究活動(dòng)的重點(diǎn)在分布式數(shù) 據(jù)庫(kù)系統(tǒng)和數(shù)據(jù)庫(kù)機(jī) 但這些進(jìn)展對(duì)市場(chǎng)幾乎沒(méi)有影響 另一個(gè)重要的理論思想是功 能型數(shù)據(jù)模型 但在除了專(zhuān)業(yè)應(yīng)用如遺傳 分子生物學(xué) 欺詐調(diào)查等方面 在全球幾 乎沒(méi)有引起注意 在 90 年代 重點(diǎn)轉(zhuǎn)向面向?qū)ο髷?shù)據(jù)庫(kù) 在需要處理比關(guān)系數(shù)據(jù)庫(kù) 處理更加復(fù)雜的數(shù)據(jù)的領(lǐng)域去了了一些成功 如空間數(shù)據(jù)庫(kù) 數(shù)據(jù)工程 包括軟件工程 庫(kù) 多媒體數(shù)據(jù) 一些思想被關(guān)系數(shù)據(jù)庫(kù)的供應(yīng)商所接納 整合 chneg 為產(chǎn)品中的新 功能 在 2000 年代 創(chuàng)新的流行的區(qū)域是 XML 數(shù)據(jù)庫(kù) 同關(guān)系數(shù)據(jù)庫(kù)一道 產(chǎn)生了 許多新的創(chuàng)業(yè)板公司 但同時(shí)重要思想也被納入已有的關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品中 XML 數(shù)據(jù) 庫(kù)的目標(biāo)是消除傳統(tǒng)數(shù)據(jù)庫(kù)分中文件和資料的分離 允許一個(gè)組織的信息資源在同樣 的地方進(jìn)行存儲(chǔ) 而不必在意他們是否是高度系統(tǒng)化的資源 2 2 1 數(shù)據(jù)庫(kù)模型 數(shù)據(jù)庫(kù)存在多種模型 而應(yīng)用于大型數(shù)據(jù)儲(chǔ)存的數(shù)據(jù)庫(kù)一般為網(wǎng)狀數(shù)據(jù)庫(kù) Network Database 關(guān)系數(shù)據(jù)庫(kù) Relational Database 以及面向?qū)ο笮蛿?shù)據(jù)庫(kù) 此外 也有應(yīng)用在 LDAP 輕量級(jí)數(shù)據(jù)訪問(wèn)協(xié)議 的樹(shù)狀數(shù)據(jù)庫(kù) Hierarchical Database 表 格數(shù)據(jù)庫(kù)一般在形式上是一個(gè)二維數(shù)組 一般來(lái)講 數(shù)組中每列表示一個(gè)數(shù)據(jù)類(lèi)型 數(shù)據(jù)在其中以不同行的形式存儲(chǔ) 表格數(shù)據(jù)庫(kù)模型是電子表格 比如 Excel 的基礎(chǔ) 2 2 2 數(shù)據(jù)庫(kù)管理 數(shù)據(jù)庫(kù)管理 Database Administration 是有關(guān)建立 存儲(chǔ) 修改和存取數(shù)據(jù)庫(kù)中信息 的技術(shù) 是指為保證數(shù)據(jù)庫(kù)系統(tǒng)的正常運(yùn)行和服務(wù)質(zhì)量 有關(guān)人員須進(jìn)行的技術(shù)管理 工作 負(fù)責(zé)這些技術(shù)管理工作的個(gè)人或集體稱(chēng)為數(shù)據(jù)庫(kù)管理員 DBA 數(shù)據(jù)庫(kù)管理的主 要內(nèi)容有 數(shù)據(jù)庫(kù)的建立 數(shù)據(jù)庫(kù)的調(diào)整 數(shù)據(jù)庫(kù)的重組 數(shù)據(jù)庫(kù)的重構(gòu) 數(shù)據(jù)庫(kù)的 安全控制 數(shù)據(jù)的完整性控制 數(shù)據(jù)庫(kù)的備份與恢復(fù) 數(shù)據(jù)庫(kù)的優(yōu)化和對(duì)用戶提供技 術(shù)支持 2 2 3 數(shù)據(jù)庫(kù)的建立 數(shù)據(jù)庫(kù)的設(shè)計(jì)只是提供了數(shù)據(jù)的類(lèi)型 邏輯結(jié)構(gòu) 聯(lián)系 約束和存儲(chǔ)結(jié)構(gòu)等有關(guān) 數(shù)據(jù)的描述 這些描述稱(chēng)為數(shù)據(jù)模式 要建立可運(yùn)行的數(shù)據(jù)庫(kù) 還需進(jìn)行下列工作 選定數(shù)據(jù)庫(kù)的各種參數(shù) 例如最大的數(shù)據(jù)存儲(chǔ)空間 緩沖決的數(shù)量 并發(fā)度等 這些參數(shù)可以由用戶設(shè)置 也可以由系統(tǒng)按默認(rèn)值設(shè)置 定義數(shù)據(jù)庫(kù) 利用數(shù)據(jù)庫(kù)管理系統(tǒng) DBMS 所提供的數(shù)據(jù)定義語(yǔ)言和命令 定義數(shù) 據(jù)庫(kù)名 數(shù)據(jù)模式 索引等 準(zhǔn)備和裝入數(shù)據(jù) 定義數(shù)據(jù)庫(kù)僅僅建立了數(shù)據(jù)庫(kù)的框架 要建成數(shù)據(jù)庫(kù)還必須裝 入大量的數(shù)據(jù) 這是一項(xiàng)浩繁的工作 在數(shù)據(jù)的準(zhǔn)備和錄入過(guò)程中 必須在技術(shù)和制 度上采取措施 保證裝入數(shù)據(jù)的正確性 計(jì)算機(jī)系統(tǒng)中原已積累的數(shù)據(jù) 要充分利用 盡可能轉(zhuǎn)換成數(shù)據(jù)庫(kù)的數(shù)據(jù) 常見(jiàn)數(shù)據(jù)庫(kù)管理系統(tǒng) FileMaker Pro 8 5 提供數(shù)據(jù)庫(kù)開(kāi)發(fā)平臺(tái)的全能數(shù)據(jù)庫(kù)軟件 4th Dimension 或者叫 4D 是一套從 Mac OS 發(fā)展出來(lái)的數(shù)據(jù)庫(kù)系統(tǒng) Microsoft Access 從微軟公司兼并的一家公司的產(chǎn)品發(fā)展而來(lái) Adabas Software AG 德國(guó) 開(kāi)發(fā)的的數(shù)據(jù)庫(kù) askSam 結(jié)合了數(shù)據(jù)庫(kù)和文本編輯 mit vielen innovativen Eigenschaften 2 3 ADO 連接技術(shù) 微軟公司的 ADO ActiveX Data Objects 是一個(gè)用于存取數(shù)據(jù)源的 COM 組件 它 提供了編程語(yǔ)言和統(tǒng)一數(shù)據(jù)訪問(wèn)方式 OLE DB 的一個(gè)中間層 允許開(kāi)發(fā)人員編寫(xiě)訪問(wèn) 數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫(kù)是如何實(shí)現(xiàn)的 而只用關(guān)心到數(shù)據(jù)庫(kù)的連接 訪問(wèn)數(shù)據(jù) 庫(kù)的時(shí)候 關(guān)于 SQL 的知識(shí)不是必要的 但是特定數(shù)據(jù)庫(kù)支持的 SQL 命令仍可以通過(guò) ADO 中的命令對(duì)象來(lái)執(zhí)行 ADO 被設(shè)計(jì)來(lái)繼承微軟早期的數(shù)據(jù)訪問(wèn)對(duì)象層 包括 RDO Remote Data Objects 和 DAO Data Access Objects ADO 在 1996 年冬被發(fā)布 ADO 包含一些頂層的對(duì)象 連接 代表到數(shù)據(jù)庫(kù)的連接 記錄集 代表數(shù)據(jù)庫(kù)記錄的一個(gè)集合 命令 代表一個(gè) SQL 命令 記錄 代表數(shù)據(jù)的一個(gè)集合 流 代表數(shù)據(jù)的順序集合 錯(cuò)誤 代表數(shù)據(jù)庫(kù)訪問(wèn)中產(chǎn)生的意外 字段 代表一個(gè)數(shù)據(jù)庫(kù)字段 參數(shù) 代表一個(gè) SQL 參數(shù) 屬性 保存對(duì)象的信息 ADO 組件的使用需要利用支持 COM 的高級(jí)語(yǔ)言 例如 ASP 中的 VBScript 或者 Visual Basic 甚至 Delphi 微軟的競(jìng)爭(zhēng)對(duì)手 Borland 的一個(gè)產(chǎn)品 現(xiàn)在也支持使用 ADO 來(lái)訪問(wèn)數(shù)據(jù)庫(kù) 在新的編程框架 NET Framework 中 微軟也提供了一個(gè)面向 Internet 的版本的 ADO 稱(chēng)為 ADO NET 其對(duì)象模型和傳統(tǒng) ADO 差別很大 ADO 是一種面向?qū)ο蟮?編程接口 微軟介紹說(shuō) 與其同 IBM 和 Oracle 提倡的那樣 創(chuàng)建一個(gè)統(tǒng)一數(shù)據(jù)庫(kù) 不 如提供一個(gè)能夠訪問(wèn)不同數(shù)據(jù)庫(kù)的統(tǒng)一接口 這樣會(huì)更加實(shí)用一些 為實(shí)現(xiàn)這一目標(biāo) 微軟在數(shù)據(jù)庫(kù)和微軟的 OLE DB 中提供了一種 橋 程序 這種程序能夠提供對(duì)數(shù)據(jù)庫(kù) 的連接 開(kāi)發(fā)人員在使用 ADO 時(shí) 其實(shí)就是在使用 OLE DB 不過(guò) OLE DB 更加 接近底層 ADO 的一項(xiàng)屬性遠(yuǎn)程數(shù)據(jù)服務(wù) 支持 數(shù)據(jù)倉(cāng)庫(kù) ActiveX 組件以及高效的 客戶端緩存 作為 ActiveX 的一部分 ADO 也是 COM 組件的一部分 ADO 是由早期 的微軟數(shù)據(jù)接口 遠(yuǎn)程數(shù)據(jù)對(duì)象 RDO 演化而來(lái)的 RDO 同微軟的 ODBC 一同連接關(guān) 系數(shù)據(jù)庫(kù) 不過(guò)不能連接非關(guān)系數(shù)據(jù)庫(kù) ADO 向我們提供了一個(gè)熟悉的 高層的對(duì) OLE DB 的 Automation 封裝接口 對(duì)那 些熟悉 RDO 的程序員來(lái)說(shuō) 你可以把 OLE DB 比作是 ODBC 驅(qū)動(dòng)程序 如同 RDO 對(duì) 象是 ODBC 驅(qū)動(dòng)程序接口一樣 ADO 對(duì)象是 OLE DB 的接口 如同不同的數(shù)據(jù)庫(kù)系統(tǒng) 需要它們自己的 ODBC 驅(qū)動(dòng)程序一樣 不同的數(shù)據(jù)源要求它們自己的 OLE DB 提供者 OLE DB provider 目前 雖然 OLE DB 提供者比較少 但微軟正積極推廣該技術(shù) 并打算用 OLE DB 取代 ODBC ADO 向 VB 程序員提供了很多好處 包括易于使用 熟悉的界面 高速度以及較 低的內(nèi)存占用 已實(shí)現(xiàn) ADO2 0 的 Msado15 dll 需要占用 342K 內(nèi)存 比 RDO 的 Msrdo20 dll 的 368K 略小 大約是 DAO3 5 的 Dao350 dll 所占內(nèi)存的 60 同傳統(tǒng)的 數(shù)據(jù)對(duì)象層次 DAO 和 RDO 不同 ADO 可以獨(dú)立創(chuàng)建 因此你可以只創(chuàng)建一個(gè) Connection 對(duì)象 但是可以有多個(gè) 獨(dú)立的 Record set 對(duì)象來(lái)使用它 ADO 針對(duì)客 戶 服務(wù)器以及 WEB 應(yīng)用程序作了優(yōu)化 2 3 1 使用 UDL 文件來(lái)創(chuàng)建 ADO 連接 創(chuàng)建 ADO 的連接 首先要設(shè)置 ADO 連接對(duì)象的 ConnectionString 屬性 該屬性 提供所要連接的數(shù)據(jù)庫(kù)類(lèi)型 數(shù)據(jù)所處服務(wù)器 要訪問(wèn)的數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)訪問(wèn)的安全 認(rèn)證信息 比較專(zhuān)業(yè)的方法是在 ConnectionString 中直接提供以上信息 下面是訪問(wèn)不 同類(lèi)型數(shù)據(jù)源設(shè)置 ConnectionString 的標(biāo)準(zhǔn) 訪問(wèn) ODBC 數(shù)據(jù) Provider MSDASQL DSN dsnName UID userName PWD userPassword 訪問(wèn) ORACLE 數(shù)據(jù)庫(kù) Provider MSDAORA Data Source serverName User ID userName Password userPassword 訪問(wèn) MS SQL 數(shù)據(jù)庫(kù) Provider SQLOLEDB Data Source serverName Initial Catalog databaseName User ID userName Password userPassword 訪問(wèn) ACCESS 數(shù)據(jù)庫(kù) Provider Microsoft Jet OLEDB 4 0 Data Source databaseName User ID userName Password userPassword 上述的連接屬性設(shè)置標(biāo)準(zhǔn)隨著數(shù)據(jù)源的類(lèi)型不同而變化 軟件用戶常常不習(xí)慣這 種設(shè)置方式 都希望有可視化的數(shù)據(jù)源設(shè)置方法 為此 Microsoft 提供了通用數(shù)據(jù)連接 文件 UDL 來(lái)建立和測(cè)試 ADO 連接屬性 ADO 連接對(duì)象可以很方便地使用 UDL 文件來(lái)連接數(shù)據(jù)源 下面例子使用 my data1 udl 來(lái)創(chuàng)建 ADO 連接 ConnectionPtr m pDBConn m pDBConn CreateInstance uuidof Connection m pDBConn ConnectionString File Name c mydir my data1 udl m pDBConn Open NULL 這樣一來(lái)無(wú)論數(shù)據(jù)源如何變化 在軟件中都可以用統(tǒng)一的方法編程 當(dāng)數(shù)據(jù)源改 變時(shí) 只要雙擊相應(yīng)的 udl 文件即可可視化地設(shè)置數(shù)據(jù)源 無(wú)需更改軟件 因?yàn)?ADO 是 COM 接口 為了軟件的可靠性 打開(kāi) ADO 連接時(shí) 可以加入異常 處理代碼 try m pDBConn Open NULL catch com error 因?yàn)?ConnectionPtr m pDBConn 是智能指針 應(yīng)在處理異常代碼時(shí)將智能指針設(shè) 為 NULL 后將自動(dòng)將引用計(jì)數(shù)降為 0 如果不出現(xiàn)異常 只要在使用完 m pDBConn 只要引用 Close 方法即可 2 3 2 創(chuàng)建你所需的 UDL 文件 在你所想創(chuàng)建 UDL 文件的目錄中單擊右鍵 選擇從菜單 新建 Microsoft 數(shù)據(jù)連接 然后將新創(chuàng)建的 UDL 文件更改為你所希望的文件名 UDL 擴(kuò)展名不能改變 注 如果操作系統(tǒng)是 Window 2000 先創(chuàng)建一個(gè)文本文件 再將該文本文件的擴(kuò)展名 改為 udl 然后雙擊所創(chuàng)建的 UDL 文件 即可視化地完成數(shù)據(jù)源的設(shè)定 3 系統(tǒng)設(shè)計(jì) 3 1 系統(tǒng)整體功能 這里的遠(yuǎn)程教育系統(tǒng)是基于網(wǎng)絡(luò)的教育系統(tǒng) 網(wǎng)絡(luò)提倡的是 資源共享 這與教 師追求的 受業(yè)解惑 是相輔相成的 整個(gè)教育系統(tǒng)要實(shí)現(xiàn)的就是傳統(tǒng)教育中要實(shí)現(xiàn)的 所有功能 本設(shè)計(jì)模擬大興社區(qū)學(xué)院 北京廣播電視大學(xué)大興分校 在線考試平臺(tái)系 統(tǒng)開(kāi)發(fā) 如圖 3 1 教師和學(xué)生都是通過(guò) Browser 瀏覽器 或者是課件來(lái)和系統(tǒng)進(jìn)行數(shù)據(jù) 通訊 從而達(dá)到足不出戶就可以學(xué)習(xí)和受業(yè)解惑的目的 圖 3 1 整體功能圖 3 2 考試子系統(tǒng)功能設(shè)計(jì) 下面我們將以設(shè)計(jì)單一科目考試系統(tǒng)為例 要實(shí)現(xiàn)一個(gè)考試系統(tǒng) 首先要了解學(xué) 生 老師 管理員和系統(tǒng)之間的關(guān)系 如圖 3 2 從下圖我們可以很清楚地看出要從學(xué)生 老師和管理員三方面來(lái)設(shè)計(jì) 圖 2 2 學(xué)生 老師和管理員關(guān)系圖 3 2 1 學(xué)生部分的功能設(shè)計(jì) 在學(xué)生開(kāi)始考試后 每個(gè)題目有一個(gè) 標(biāo)記 Mark 若用戶對(duì)某題目的答案不太 明確時(shí) 可以在標(biāo)記框上打記號(hào) 使用戶以后能很方便地找到這個(gè)題目 試卷中還有 一個(gè)預(yù)覽的功能 Overview 選擇這個(gè)功能時(shí)將會(huì)展示整個(gè)試卷的完成情況 單擊相 應(yīng)的題號(hào)可直接進(jìn)入相應(yīng)的小題 1 用戶檢驗(yàn) 系統(tǒng)同時(shí)只允許用戶從一個(gè)地點(diǎn)進(jìn)行登錄 禁止兩個(gè)或多個(gè)人同時(shí)用一個(gè)賬戶進(jìn) 行考試 其目的為了防止非法用戶進(jìn)行登錄 2 聯(lián)機(jī)檢測(cè) 每個(gè)登錄的用戶有個(gè)時(shí)鐘 Timer 從用戶上一次與 Server 端對(duì)話開(kāi)始計(jì)時(shí) 如 果一個(gè)用戶長(zhǎng)時(shí)間沒(méi)有與 Server 端對(duì)話 并且超過(guò)了 15 分鐘的話 系統(tǒng)自動(dòng)認(rèn)為與用 戶的連接中斷并切斷與該用戶的連接 如果此時(shí)用戶仍想繼續(xù)測(cè)試的話 必須重新進(jìn) 行登錄 3 災(zāi)難恢復(fù) 考慮到考生的每個(gè)狀態(tài)都是存放在數(shù)據(jù)庫(kù)中 因此系統(tǒng)中非常重視災(zāi)難恢復(fù)的功 能 若某種原因使系統(tǒng) Server 端或 Client 端 異常停止 系統(tǒng)在得到恢復(fù)后 用戶 重新登錄能繼續(xù)進(jìn)行 甚至能自動(dòng)把用戶的界面恢復(fù)到系統(tǒng)中斷前的狀態(tài) 如果停機(jī) 時(shí) 用戶正在進(jìn)行考試 那么在 15 分鐘之內(nèi)恢復(fù)則考試?yán)^續(xù)進(jìn)行 如果時(shí)間超過(guò) 15 分鐘系統(tǒng)才被恢復(fù)的話 則考試會(huì)自動(dòng)停止 用戶重新登錄后能繼續(xù)進(jìn)行余下的考試 4 超時(shí) 當(dāng)參加考試用戶時(shí)間到了的時(shí)候 系統(tǒng)將會(huì)自動(dòng)終止該用戶的考試狀態(tài) 3 2 2 老師部分的功能設(shè)計(jì) 在教師進(jìn)入系統(tǒng)后 可以通過(guò)系統(tǒng)中的模板功能一步一步的組合出一張用于學(xué)生 考試的試卷 在出題模板里面 教師可以從數(shù)據(jù)庫(kù)中按照關(guān)鍵字或題目所在分類(lèi)等其 他的查詢條件進(jìn)行查找 找到相應(yīng)的題目之后就可以添加到當(dāng)前的試卷之中 為了增 加出題的靈活性 也支持手動(dòng)錄入一些非題庫(kù)中的題目 題目還可以和平時(shí)的作業(yè)以及課件中的練習(xí)相結(jié)合 平時(shí)的作業(yè)可以從設(shè)置的作 業(yè)庫(kù)中進(jìn)行選擇 而課件中的聯(lián)系則需要和課件的標(biāo)準(zhǔn)相結(jié)合 根據(jù)標(biāo)準(zhǔn) 課件中的 練習(xí)題目都是附合標(biāo)準(zhǔn)的結(jié)構(gòu)的 其中的題目都是客觀題 而且都是有答案的 答案 是通過(guò)標(biāo)準(zhǔn)規(guī)定的邏輯結(jié)構(gòu)實(shí)現(xiàn)的 而且 每個(gè)題目是有自己所針對(duì)的教學(xué)目標(biāo)的 1 用戶檢驗(yàn) 系統(tǒng)同時(shí)只允許教師從一個(gè)地點(diǎn)進(jìn)行登錄 禁止一個(gè)賬號(hào)同時(shí)二次以上登陸 除 此之外 還可以設(shè)定訪問(wèn)者的 IP 限制 例如只有校園網(wǎng)內(nèi)的 IP 地址才能登陸 其目的 是為了防止非法用戶進(jìn)行登錄 這樣雖然限制了系統(tǒng)隨地性 但為了保證系統(tǒng)的安全 也是可行的 2 聯(lián)機(jī)檢測(cè) 其功能與學(xué)生考試部分的功能基本上是一樣的 考慮到教師出題時(shí)需要準(zhǔn)備的內(nèi) 容比較多 時(shí)鐘 Timer 的底線可以適當(dāng)延長(zhǎng)到 30 分鐘 3 2 3 管理員部分的功能設(shè)計(jì) 管理員作為整個(gè)系統(tǒng)的管理者 具有對(duì)數(shù)據(jù)庫(kù)和系統(tǒng)的管理操作權(quán)利 其中包括 對(duì)用戶和試卷進(jìn)行管理 增加 刪除 修改等 如果管理的方式和其他用戶一樣 也 采用 B S 模式的話 一旦賬號(hào)外泄后果將不堪設(shè)想 考慮到管理員一般都是具備相當(dāng) 計(jì)算機(jī)能力的人員 因此 管理員要在 Server 端對(duì)系統(tǒng)和數(shù)據(jù)庫(kù)進(jìn)行直接操作 3 3 數(shù)據(jù)庫(kù)的設(shè)計(jì)實(shí)現(xiàn) 數(shù)據(jù)庫(kù)是系統(tǒng)中最重要的部分之一 基于 B S 模式的考試系統(tǒng) 考生和教師的大 部分操作都要用到數(shù)據(jù)庫(kù) 所以數(shù)據(jù)庫(kù)的選擇和設(shè)計(jì)將影響到整個(gè)系統(tǒng)的性能和功能 3 3 1 數(shù)據(jù)庫(kù)的選擇 考試系統(tǒng)中的數(shù)據(jù)庫(kù)特指 B S 結(jié)構(gòu)中的 Web 數(shù)據(jù)庫(kù) 它既可以同 Web 服務(wù)器安裝 在同一臺(tái)機(jī)器上 也可以安裝在專(zhuān)門(mén)的數(shù)據(jù)庫(kù)服務(wù)器上 就目前使用的數(shù)據(jù)庫(kù) 一類(lèi) 是基于文件的數(shù)據(jù)庫(kù) 如微軟公司的 FoxPro Access 等 另一類(lèi)是基于服務(wù)器的后臺(tái) 數(shù)據(jù)庫(kù) 如微軟公司的 SQL Server Oracle 公司的 Oracle 系列等 對(duì)基于文件的數(shù)據(jù) 庫(kù) 當(dāng)客戶端發(fā)出數(shù)據(jù)請(qǐng)求的時(shí)候 在網(wǎng)絡(luò)上傳輸?shù)氖钦麄€(gè)數(shù)據(jù)文件 它不能有選擇 地根據(jù)用戶地需求傳送數(shù)據(jù) 另外 當(dāng)多個(gè)用戶同時(shí)訪問(wèn)一個(gè)數(shù)據(jù)文件時(shí) 由于該數(shù) 據(jù)庫(kù)響應(yīng)執(zhí)行的順序特性 必然會(huì)成為影響系統(tǒng)性能的瓶頸 而基于服務(wù)器的數(shù)據(jù)庫(kù) 管理系統(tǒng) 在網(wǎng)絡(luò)服務(wù)器上存在活動(dòng)的數(shù)據(jù)庫(kù)進(jìn)程 當(dāng)客戶端向服務(wù)器發(fā)出數(shù)據(jù)請(qǐng)求 的時(shí)候 由服務(wù)器上的活動(dòng)數(shù)據(jù)庫(kù)進(jìn)行對(duì)該請(qǐng)示進(jìn)行處理 并把執(zhí)行結(jié)果返回給客戶 端 從而減輕了網(wǎng)絡(luò)負(fù)擔(dān) 提高了和系統(tǒng)的并發(fā)操作性能 根據(jù)用戶訪問(wèn)網(wǎng)絡(luò)考試題 庫(kù)的頻發(fā)特性以及網(wǎng)絡(luò)考試的交互特性 本系統(tǒng)選擇了基于服務(wù)器的 Access 作為后臺(tái) 數(shù)據(jù)庫(kù) 3 3 2 數(shù)據(jù)庫(kù)表的設(shè)計(jì) 1 學(xué)生表 stbuser 學(xué)生表存儲(chǔ)的是學(xué)生的基本信息 包括姓名 性別 所屬班級(jí) 年級(jí)等等 我們 在這里主要列舉一些和考試子系統(tǒng)有關(guān)的字段 屬性如表 3 1 表 3 1 學(xué)生表 字段名數(shù)據(jù)類(lèi)型長(zhǎng)度缺省值NULL說(shuō)明 userid自動(dòng)編號(hào)非空用戶 ID username文本50用戶名 tName文本50真實(shí)姓名 Pwd文本50密碼 email文本50郵箱 nianji文本50年級(jí)年級(jí) banji文本50班級(jí)班級(jí) isopen長(zhǎng)整型是否打開(kāi) tim日期 時(shí)間時(shí)間 sex長(zhǎng)整型性別 2 用戶級(jí)別表 tbadmin 用來(lái)保存用戶的級(jí)別及權(quán)限 用戶級(jí)別表屬性如表 3 2 表 3 2 用戶級(jí)別表 字段名數(shù)據(jù)類(lèi)型長(zhǎng)度缺省值NULL舉例 adminid自動(dòng)編號(hào)非空用戶 ID username文本50用戶名 pwd 文本 50密碼 email 文本 50電子郵箱 tname 文本 50真實(shí)姓名 power 文本 100權(quán)限 tim日期 時(shí)間注冊(cè)日期 sex長(zhǎng)整型性別 3 試卷表 tbtk 用來(lái)保存教師所出試卷的信息 包括試卷題目 選項(xiàng) 答案 是否考試 是否閱 卷等信息 試卷表屬性如表 3 2 表 3 3 試卷表 字段名數(shù)據(jù)類(lèi)型長(zhǎng)度缺省值NULL舉例 tmid 自動(dòng)編號(hào)非空試卷 ID title 備注題干 a 備注選項(xiàng) A 內(nèi)容 b 備注選項(xiàng) B 內(nèi)容 c 備注選項(xiàng) C 內(nèi)容 d 備注選項(xiàng) D 內(nèi)容 e 備注選項(xiàng) E 內(nèi)容 f 備注選項(xiàng) F 內(nèi)容 ans 備注答案 level 長(zhǎng)整型級(jí)別 kao 長(zhǎng)整型是否考試 photo 長(zhǎng)整型上傳圖片 isread 長(zhǎng)整型是否判卷 4 用戶界面的設(shè)計(jì)實(shí)現(xiàn) 用戶界面是系統(tǒng)與用戶之間的接口 也是控制和選擇信息輸入輸出的主要途徑 我們對(duì)用戶界面的設(shè)計(jì)應(yīng)堅(jiān)持友好 簡(jiǎn)便 實(shí)用 易于操作的原則 盡量避免過(guò)于繁 瑣和花哨 本系統(tǒng)的用戶交互界面設(shè)計(jì)兩大部分 一部分是學(xué)生登陸系統(tǒng) 進(jìn)行測(cè)驗(yàn) 時(shí)的 Internet Explorer 或者其他瀏覽器的界面 另一部分是教師登陸系統(tǒng) 進(jìn)行管理 出題 判卷等的界面 下面我們分別予以介紹他們的設(shè)計(jì) 4 1 主界面設(shè)計(jì) 因本系統(tǒng)屬于遠(yuǎn)程教學(xué)平臺(tái)系統(tǒng)的一部分 主界面沒(méi)有采用 logo banner 設(shè)計(jì) 界 面比較簡(jiǎn)單 以方便教師 學(xué)生操作為出發(fā)點(diǎn) 如圖 4 1 所示 圖 4 1 主界面 4 2 登陸窗口設(shè)計(jì) 登陸窗口包含考試登陸窗口 新用戶登陸 超鏈接 考試新聞 成績(jī)發(fā)布 在線 調(diào)查 學(xué)習(xí)心得和其他在線考試系統(tǒng)的友情鏈接 如圖 4 2 所示 圖 4 2 軟件登陸界面 在考試登陸欄目中輸入管理員 勾選管理員復(fù)選框 教師 學(xué)生的準(zhǔn)考證號(hào)和密 碼后可以登陸不同的考試系統(tǒng)界面 軟件根據(jù)登陸的用戶給予不同的軟件操作權(quán)限 1 選擇科目窗口 學(xué)生身份登陸后 便進(jìn)入選擇科目窗口 如圖 4 3 所示 圖 4 3 選擇科目界面 學(xué)生輸入用戶名 密碼后可以登陸學(xué)生界面 該界面包括學(xué)生的基本信息 并可 以隨時(shí)修改個(gè)人選擇科目 查詢成績(jī) 考試新聞等欄目 選擇科目操作介紹 考試部分 您要參加考試 必須滿足幾個(gè)前提 a 學(xué)員所在的班級(jí)有權(quán)限參加該試卷的考試 b 該試卷呈 打開(kāi) 狀態(tài) c 該試卷所在科目呈 打開(kāi) 狀態(tài) d 正好在試卷規(guī)定的 時(shí)間內(nèi)參加考試 學(xué)生在考試過(guò)程中 應(yīng)注意保存答案 試卷內(nèi)每一種題型的后面都有一個(gè)保存按 鈕 只要學(xué)員點(diǎn)擊保存按鈕 不但可以保存此題型的答案 還可以保存其他題型的答 案 試卷用倒計(jì)時(shí)方式扣減時(shí)間 如果您在考試過(guò)程中不小心關(guān)閉窗口 您可以重新 進(jìn)入考試系統(tǒng) 繼續(xù)剛才的考試 您以前保存的答案仍舊存在 在考試結(jié)束前一分鐘和最后 10 秒種 系統(tǒng)會(huì)提示您保存答案 并提交試卷 練習(xí)部分 您要參加練習(xí) 管理員或教師必須首先在后臺(tái)的 科目管理 練習(xí)控制 中 設(shè)置好要練習(xí)章節(jié)的時(shí)間 狀態(tài) 練習(xí)時(shí) 以章為單位 按題型類(lèi)別反復(fù)練習(xí) 只有在點(diǎn)擊 本章已經(jīng)練習(xí)完 之 后 您才可以在 查詢成績(jī) 中看到此章練習(xí)的標(biāo)準(zhǔn)答案和您的答案 如果您想再練 習(xí)一次 請(qǐng)點(diǎn)擊 重新練習(xí) 2 成績(jī)查詢 考試部分 在線考試界面如圖 4 4 所示 4 4 在線考試界面 因?yàn)樵嚲碇械闹饔^題需要老師批改 可能需要一段時(shí)間才能查詢到成績(jī) 但如果 試卷是由客觀題型組成的 管理員或教師就可以在后臺(tái)的 參數(shù)設(shè)置 允許考完 后瀏覽客觀題成績(jī) 中 選擇 是 這樣 考生就可以在考試結(jié)束后查詢到自己的 成績(jī)了 練習(xí)部分 只有在點(diǎn)擊 本章已經(jīng)練習(xí)完 之后 您才可以在 查詢成績(jī) 中看到此章練習(xí) 的標(biāo)準(zhǔn)答案和您的答案 3 考試新聞 有關(guān)學(xué)員的考試信息 考試時(shí)間 考試科目等 可以在學(xué)員登陸本考試系統(tǒng)后在 考試新聞欄目中進(jìn)行查詢 4 教師登陸 教師登陸窗口如圖 4 5 所示 4 5 教師登陸界面 教師權(quán)限 科目管理 題庫(kù)管理 試卷批改 考試新聞等內(nèi)容 科目管理 科目管理 教師只能對(duì)管理員對(duì)其授權(quán)的科目進(jìn)行管理 當(dāng)本科目中如果有試卷呈 打開(kāi) 狀態(tài)時(shí) 請(qǐng)將此科目 打開(kāi) 練習(xí)控制 章節(jié)控制 用于設(shè)定練習(xí)的時(shí)間和狀態(tài) 使用時(shí)必須為 打開(kāi) 狀態(tài) 如果您想把題目錄入 到相應(yīng)的章節(jié) 請(qǐng)?jiān)诖颂砑诱鹿?jié)序號(hào) 添加章節(jié)時(shí)必須輸入數(shù)字 以防出錯(cuò) 現(xiàn)有 題量 顯示了本章節(jié)所儲(chǔ)存的 考試題 和 練習(xí)題 的總量 試卷管理 試卷類(lèi)型分兩類(lèi) 隨機(jī)試卷和人工出卷 隨機(jī)試卷必須在 題型管理 中添加 題量 和 分值 而人工出題的試卷在添加過(guò)程中需要從題庫(kù)中選擇試題 使試 題呈 選中 狀態(tài) 且在 題型管理 中只需填寫(xiě) 分值 即可 系統(tǒng)會(huì)自動(dòng)計(jì)算 題量 使用試卷時(shí) 務(wù)必把試卷 打開(kāi) 題型管理 中的 分值 除閱讀理解外 都是指每道題目的分值 因?yàn)殚喿x 理解是以大題為單位選題或是抽題 而每道大題都有不確定小題 所以大題的總分值 無(wú)法統(tǒng)計(jì) 只能輸入小題的 分值 注意 一旦修改試卷的 題量 和 分值 將會(huì)清空已經(jīng)考過(guò)此試卷的用戶數(shù)據(jù) 您最好在考試之前設(shè)定好試卷的 題量 和 分值 添加好試卷以后 請(qǐng)到 班級(jí)權(quán)限管理 中設(shè)置哪些班級(jí)將參加此張?jiān)嚲淼目荚?題庫(kù)管理 題庫(kù)設(shè)置 本測(cè)試系統(tǒng)一共有八種題型 如果有些題型您不需要 請(qǐng)將此題型 關(guān)閉
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年工程項(xiàng)目管理行業(yè)規(guī)范試題及答案
- 農(nóng)場(chǎng)生產(chǎn)物資供應(yīng)協(xié)議
- 工程項(xiàng)目管理經(jīng)驗(yàn)反饋試題及答案
- 綜合復(fù)習(xí)2025年工程經(jīng)濟(jì)試題及答案
- 變壓器購(gòu)買(mǎi)合同書(shū)
- 2025年項(xiàng)目融資方案試題及答案
- 綠色倉(cāng)儲(chǔ)實(shí)踐與未來(lái)發(fā)展計(jì)劃
- 產(chǎn)品生命周期管理的年度設(shè)計(jì)計(jì)劃
- 2025年項(xiàng)目管理考試通知解讀試題及答案
- 2025年工程項(xiàng)目管理多方合作試題及答案
- 2025-2030中國(guó)老年教育行業(yè)發(fā)展前景及發(fā)展策略與投資風(fēng)險(xiǎn)研究報(bào)告
- 2024年延安通和電業(yè)有限責(zé)任公司招聘考試真題
- 2024年新人教版英語(yǔ)三年級(jí)上冊(cè) U6 A learn 教學(xué)課件
- 美發(fā)店入職合同保密協(xié)議
- 2025-2030年中國(guó)腫瘤醫(yī)院行業(yè)市場(chǎng)發(fā)展現(xiàn)狀分析及未來(lái)趨勢(shì)預(yù)測(cè)研究報(bào)告
- 茶廉文化課件
- 2024年中南大學(xué)專(zhuān)職輔導(dǎo)員招聘筆試真題
- 2025甘肅省農(nóng)墾集團(tuán)有限責(zé)任公司招聘生產(chǎn)技術(shù)人員145人筆試參考題庫(kù)附帶答案詳解
- 2025-2030中國(guó)財(cái)務(wù)公司行業(yè)深度分析及發(fā)展前景與發(fā)展戰(zhàn)略研究報(bào)告
- 2025年人教版小學(xué)五年級(jí)下冊(cè)奧林匹克數(shù)學(xué)競(jìng)賽測(cè)試題(附參考答案)
- 不分手協(xié)議書(shū)合同書(shū)
評(píng)論
0/150
提交評(píng)論