畢業(yè)論文——基于BS的計(jì)算機(jī)等級(jí)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

收藏

編號(hào):118210701    類型:共享資源    大?。?span id="8sgccva" class="font-tahoma">671.50KB    格式:DOC    上傳時(shí)間:2022-07-11
20
積分
關(guān) 鍵 詞:
的計(jì)算機(jī)等級(jí)考試 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)等級(jí)考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)畢業(yè)設(shè)計(jì) 計(jì)算機(jī)等級(jí)考試 系統(tǒng)—計(jì)算機(jī)畢業(yè)設(shè)計(jì) 系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn) 基于BS的計(jì)算機(jī)等級(jí)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
資源描述:
基于B/S的計(jì)算機(jī)等級(jí)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要隨著計(jì)算機(jī)技術(shù)的發(fā)展及計(jì)算機(jī)的日益普及,基于B/S結(jié)構(gòu)的考試系統(tǒng)與無(wú)紙化辦公一樣已成為大勢(shì)所趨。論文詳細(xì)論述了一個(gè)基于B/S結(jié)構(gòu)的計(jì)算機(jī)等級(jí)考試系統(tǒng)的設(shè)計(jì)過(guò)程。軟件采用ASP.NET 2005作開(kāi)發(fā)平臺(tái),C#作編程語(yǔ)言,SQL Server 2005作數(shù)據(jù)庫(kù)管理系統(tǒng),實(shí)現(xiàn)了試題管理、試卷生成、在線考試、試卷評(píng)判、權(quán)限管理、在線報(bào)名及站內(nèi)公告等功能。系統(tǒng)符合全國(guó)計(jì)算機(jī)等級(jí)考試的要求。論文組織如下:首先闡述了該系統(tǒng)的開(kāi)發(fā)背景、意義;其次介紹了相關(guān)的開(kāi)發(fā)工具及技術(shù)基礎(chǔ);接著對(duì)系統(tǒng)的需求進(jìn)行了分析,并提出了具體的設(shè)計(jì)方案和數(shù)據(jù)庫(kù)模型;然后展現(xiàn)了整個(gè)系統(tǒng)的具體實(shí)現(xiàn),包括數(shù)據(jù)庫(kù)的設(shè)計(jì)和連接,各功能模塊的實(shí)現(xiàn);最后對(duì)該軟件進(jìn)行了嚴(yán)格的測(cè)試。關(guān)鍵詞: B/S結(jié)構(gòu);計(jì)算機(jī)等級(jí)考試;考試系統(tǒng)The Design and Implementation of Computer Rank Examination System based on B/SAbstractWith the development of the computer technology and the popularization of computers, the examination system based on B/S structure has become the trend of the times the same as the paperless office. The paper discusses in detail the development and design process of a computer rank examination system based on B/S structure. It uses ASP.NET 2005 as the development platform, C# as the programming language, SQL Server 2005 as the database management system, and includes test questions management, examination paper production, online examinations, examination paper judgment, authority management, online enrollment and site notice, etc. It can accord with the requirement of the national computer rank examination.The paper is organized as following: Firstly, analyzes the background and significance; Secondly, introduces the development tools and the foundation of the technology; Thirdly, analyses the demand of the system, gives a specific design project and a database model; Then shows the implementation of the whole system, which includes the design and linkage of the database and the implementation of every module. Finally gives a test of the system.Key words: B/S structure; Computer rank test; Examination system1 引 言目前學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過(guò)五個(gè)步驟,即人工出題、考生考試、人工閱卷、成績(jī)?cè)u(píng)估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會(huì)越來(lái)越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說(shuō)傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,如遠(yuǎn)程教育和虛擬大學(xué)的出現(xiàn)等等,且這些應(yīng)用正逐步深入到千家萬(wàn)戶。人們迫切要求利用這些技術(shù)來(lái)進(jìn)行在線考試,以減輕人們的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從而使考試更趨于公證、客觀,更加激發(fā)學(xué)生的學(xué)習(xí)興趣。例如目前許多國(guó)際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。在線考試模擬系統(tǒng)是現(xiàn)階段研究開(kāi)發(fā)的一個(gè)熱點(diǎn)。它是建立在國(guó)際互聯(lián)網(wǎng)上的應(yīng)用系統(tǒng),客戶端的配置可以極為簡(jiǎn)單,使考試不受地域的局限。一個(gè)完備的在線考試模擬系統(tǒng)可以使用戶在網(wǎng)上學(xué)習(xí)過(guò)后及時(shí)檢驗(yàn)自己的學(xué)習(xí)效果,已發(fā)現(xiàn)自己的不足,使得學(xué)習(xí)效率得到很大提高。在線考試模擬系統(tǒng)中題目的生成、試卷的提交、成績(jī)的批閱等都可以在網(wǎng)絡(luò)上自動(dòng)完成。只要形成一套成熟的題庫(kù)就可以實(shí)現(xiàn)考試的自動(dòng)化。這樣一來(lái),教師所要做的只是精心設(shè)計(jì)題目、維護(hù)題庫(kù),而不是組織考試,從而大大減輕了教師的負(fù)擔(dān),這表明其經(jīng)濟(jì)性是相當(dāng)可觀的。為了適應(yīng)新形勢(shì)的發(fā)展,我進(jìn)行了這一系統(tǒng)的初步設(shè)計(jì)工作,也可以說(shuō)是做一個(gè)初步的探索,希望它能夠在各類考試中發(fā)揮高效、便捷的作用,把老師從繁重的工作中解脫出來(lái)!目前,網(wǎng)絡(luò)應(yīng)用軟件運(yùn)行的模式主要有二類:Client/server模式,Browser/Web模式。前者主要的缺點(diǎn)是維護(hù)、升級(jí)較麻煩,后者是近幾年伴隨Internet迅速發(fā)展起來(lái)的一種技術(shù),它與客戶/服務(wù)器方式類似,客戶端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是Web Server ,而Web Server與數(shù)據(jù)庫(kù)和應(yīng)用服務(wù)器的緊密結(jié)合,使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務(wù)系統(tǒng)、企業(yè)的MIS系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級(jí)維護(hù)簡(jiǎn)便。另外,考試系統(tǒng)的軟件也必將不斷的更新;同時(shí)軟件產(chǎn)品本身就要經(jīng)過(guò)一個(gè)不斷自我完善的過(guò)程?;谏鲜隹紤],用Browser/Web模式來(lái)設(shè)計(jì)考試系統(tǒng)比較合適,服務(wù)器端我們采用SQL Server數(shù)據(jù)庫(kù)系統(tǒng)和.Net框架來(lái)構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器來(lái)完成考試全過(guò)程,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。利用網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用微軟.NET技術(shù),我開(kāi)發(fā)了基于B/S模式的多用戶在線考試模擬系統(tǒng)這一程序。它運(yùn)用方便、操作簡(jiǎn)單,效率很高(同時(shí),它要求計(jì)算機(jī)配置也很高,尤其是服務(wù)器端)?,F(xiàn)階段雖只實(shí)現(xiàn)了試卷的客觀題部分,但已具有用戶注冊(cè)、用戶個(gè)人信息修改、多用戶同時(shí)在線考試、試卷生成、時(shí)間控制、自動(dòng)判卷,試題錄入、修改題庫(kù)、用戶管理、試卷管理、分?jǐn)?shù)管理等重要功能,也就是說(shuō)實(shí)現(xiàn)了真正的無(wú)紙化考試,滿足任何授權(quán)的考生在規(guī)定時(shí)間內(nèi)隨地考試并迅速獲得成績(jī),同時(shí)也大大減輕了教師出題、出題和判卷等繁重的工作量。2 技術(shù)背景該在線考試系統(tǒng)主要采用Visual C# 2005、SQL Server 2005數(shù)據(jù)庫(kù)、JavaScript等技術(shù)和工具,整體設(shè)計(jì)遵循軟件工程的方法,經(jīng)過(guò)需求分析、總體設(shè)計(jì)、文檔和代碼的編制、模塊測(cè)試和系統(tǒng)實(shí)現(xiàn)幾個(gè)階段。下面就對(duì)這幾種技術(shù)和方法做一個(gè)概述。2.1 B/S結(jié)構(gòu)B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet / Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在JAVA這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。2.2 開(kāi)發(fā)工具簡(jiǎn)介2.2.1 Visual C# 2005簡(jiǎn)介Visual Studio 是一套完整的開(kāi)發(fā)工具集,用于生成 ASP.NET Web 應(yīng)用程序、XML Web Services、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。Visual Basic、Visual C+、Visual C# 和 Visual J# 全都使用相同的集成開(kāi)發(fā)環(huán)境 (IDE),利用此 IDE 可以共享工具且有助于創(chuàng)建混合語(yǔ)言解決方案。另外,這些語(yǔ)言利用了 .NET Framework 的功能,通過(guò)此框架可使用簡(jiǎn)化 ASP Web 應(yīng)用程序和 XML Web Services 開(kāi)發(fā)的關(guān)鍵技術(shù)。Microsoft Visual C# 2005(讀作 C sharp)是一種編程語(yǔ)言,它是為生成在 .NET Framework 上運(yùn)行的多種應(yīng)用程序而設(shè)計(jì)的。C# 簡(jiǎn)單、功能強(qiáng)大、類型安全,而且是面向?qū)ο蟮?。C# 憑借它的許多創(chuàng)新,在保持 C 樣式語(yǔ)言的表示形式和優(yōu)美的同時(shí),實(shí)現(xiàn)了應(yīng)用程序的快速開(kāi)發(fā)。Visual Studio 支持 Visual C#,這是通過(guò)功能齊全的代碼編輯器、項(xiàng)目模板、設(shè)計(jì)器、代碼向?qū)?、功能?qiáng)大且易于使用的調(diào)試器以及其他工具實(shí)現(xiàn)的。通過(guò).NET Framework 類庫(kù),可以訪問(wèn)多種操作系統(tǒng)服務(wù)和其他有用的精心設(shè)計(jì)的類,這些類可顯著加快開(kāi)發(fā)周期。2.2.2 SQL Sever 2005簡(jiǎn)介SQL Server 是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),是Microsoft推出新一代數(shù)據(jù)管理與分析軟件。SQL Server 是一個(gè)全面的、集成的、端到端的數(shù)據(jù)解決方案,它為企業(yè)中的用戶提供了一個(gè)安全、可靠和高效的平臺(tái)用于企業(yè)數(shù)據(jù)管理和商業(yè)智能應(yīng)用。SQL Server 是一個(gè)全面的、集成的、端到端的數(shù)據(jù)解決方案,它為企業(yè)中的用戶提供了一個(gè)安全、可靠和高效的平臺(tái)用于企業(yè)數(shù)據(jù)管理和商業(yè)智能應(yīng)用。SQL Server 2005 為IT專家和信息工作者帶來(lái)了強(qiáng)大的、熟悉的工具,同時(shí)減少了在從移動(dòng)設(shè)備到企業(yè)數(shù)據(jù)系統(tǒng)的多平臺(tái)上創(chuàng)建、部署、管理及使用企業(yè)數(shù)據(jù)和分析應(yīng)用程序的復(fù)雜度。 通過(guò)全面的功能集、和現(xiàn)有系統(tǒng)的集成性、以及對(duì)日常任務(wù)的自動(dòng)化管理能力,SQL Server 2005 為不同規(guī)模的企業(yè)提供了一個(gè)完整的數(shù)據(jù)解決方案。SQL Server 數(shù)據(jù)平臺(tái)包括如下工具:關(guān)系型數(shù)據(jù)庫(kù)、復(fù)制服務(wù)、通知服務(wù)、集成服務(wù)、分析服務(wù)、報(bào)表服務(wù)、管理工具、開(kāi)發(fā)工具。 SQL Server 2005 數(shù)據(jù)平臺(tái)為不同規(guī)模的組織提供了如下好處:充分利用數(shù)據(jù)資產(chǎn)、提高生產(chǎn)力、減少IT復(fù)雜度、更低的總體擁有成本 (TCO)。3系統(tǒng)分析3.1需求分析3.1.1系統(tǒng)需要解決的主要問(wèn)題因?yàn)榭荚囀怯刑囟ǖ膶?duì)象的,所以考生在進(jìn)入該系統(tǒng)前應(yīng)該進(jìn)行在線報(bào)名。報(bào)名時(shí)填寫相應(yīng)的個(gè)人信息(如身份證號(hào)、報(bào)考科目等),報(bào)名后到相關(guān)部門進(jìn)行交費(fèi)。由管理員進(jìn)行審核后,考生進(jìn)入考試系統(tǒng),根據(jù)報(bào)名時(shí)選擇的考試科目,參加相應(yīng)的考試。鑒于計(jì)算機(jī)等級(jí)考試為全國(guó)性統(tǒng)一考試,考試時(shí)間有相應(yīng)的規(guī)定。因此要對(duì)登錄了考試系統(tǒng)進(jìn)行參考的用戶進(jìn)行考試時(shí)間判斷,避免在非考試時(shí)段參加考試。另外,系統(tǒng)還應(yīng)該對(duì)考試時(shí)間進(jìn)行控制,時(shí)間到了會(huì)要求考試者交卷。在考試過(guò)程中要防止考生作弊,要禁止避免某些按鍵(如ALT、F5等)的操作。考試者選擇答案提交后,應(yīng)該由計(jì)算機(jī)自動(dòng)判卷,得到成績(jī)先保存,在閱卷人審核后在考生信息頁(yè)面顯示出來(lái)。考試完畢后,系統(tǒng)關(guān)閉考試頁(yè)面,回到考試前頁(yè)面。3.1.2系統(tǒng)應(yīng)該具備的基本功能1試題管理:管理員利用賬號(hào)和密碼成功登錄以后,進(jìn)入管理頁(yè)面,管理員可以通過(guò)系統(tǒng)做的手動(dòng)添加試題頁(yè)面自己手動(dòng)添加試題,并對(duì)相關(guān)信息進(jìn)行添加、修改以及刪除。2試卷生成:事先設(shè)定好考試題目數(shù)量,考試日期,分?jǐn)?shù)等信息。3在線考試:考生根據(jù)準(zhǔn)考證號(hào)和密碼成功登錄后,進(jìn)入考試界面??忌虚_(kāi)始考試,提交試卷,查詢成績(jī)權(quán)限??忌鶕?jù)報(bào)名時(shí)選擇的考試科目,在規(guī)定時(shí)間段內(nèi)參加相應(yīng)的考試,點(diǎn)擊開(kāi)始考試后,進(jìn)行考試界面,并要防止考生刷新及點(diǎn)擊右鍵等操作,對(duì)考試時(shí)間計(jì)時(shí),考試時(shí)間到,系統(tǒng)強(qiáng)制提交試卷。4試卷評(píng)判:主、客觀題目均事先由系統(tǒng)自動(dòng)判斷,主觀題目閱卷人登陸后,可以根據(jù)情況手工判卷并做出相應(yīng)的分?jǐn)?shù)修改。5權(quán)限管理:管理員擁有除閱卷外的所有權(quán)限,管理員根據(jù)賬號(hào)和密碼成功登錄后,可以對(duì)教師和考生的信息、公告、試題、試卷等進(jìn)行管理。6在線報(bào)名:考生通過(guò)在線報(bào)名頁(yè)面,獲取系統(tǒng)自動(dòng)分配的準(zhǔn)考證號(hào),添加相應(yīng)的考生信息(包括身份證、性別、考試級(jí)別以及相應(yīng)的科目)完成報(bào)名。在相關(guān)部門交費(fèi)后,由管理員審核成功后獲取考試資格。7站內(nèi)公告:發(fā)布計(jì)算機(jī)等級(jí)考試的相關(guān)信息,如考試要求、時(shí)間等。管理員通過(guò)登錄進(jìn)行相關(guān)的添加、修改和刪除。3.2可行性分析3.2.1技術(shù)可行性分析該考試系統(tǒng)的技術(shù)可行性,可以從硬件(包括外圍設(shè)備)的性能要求、軟件的性能要求(包括操作系統(tǒng)、程序設(shè)計(jì)、語(yǔ)言、軟件包、數(shù)據(jù)庫(kù)管理系統(tǒng)及各種軟件工具)、能源及環(huán)境條件、輔助設(shè)備及備品配件條件幾個(gè)方面去考慮。計(jì)算機(jī)硬件要求:CPU:奔騰1.0GHz以上內(nèi)存:256MB以上顯示卡:顯存16M及以上硬盤:2GB以上剩余磁盤空間驅(qū)動(dòng)器:8倍速CD-ROM以上 高分辨率(1024*768)彩色顯示器軟件要求:WINDOWS操作系統(tǒng)或XP操作系統(tǒng),.Net 2005和Microsoft SQL Server2005就目前使用的開(kāi)發(fā)技術(shù)來(lái)說(shuō)建議系統(tǒng)的功能目標(biāo)應(yīng)該能夠達(dá)到;利用現(xiàn)有的技術(shù)在規(guī)定的期限內(nèi)開(kāi)發(fā)工作基本能夠完成。3.2.2 經(jīng)濟(jì)可行性分析經(jīng)濟(jì)可行性分析主要是對(duì)開(kāi)發(fā)項(xiàng)目的成本與效益做出評(píng)估,即分析新系統(tǒng)所帶來(lái)的經(jīng)濟(jì)效益是否超過(guò)開(kāi)發(fā)和維護(hù)網(wǎng)站所需要的費(fèi)用。用戶在使用該系統(tǒng)后只需花一定資金購(gòu)買一部分計(jì)算機(jī)與軟件就能實(shí)現(xiàn)。3.2.3 社會(huì)因素方面的可行性分析本系統(tǒng)僅用于全國(guó)計(jì)算機(jī)等級(jí)考試,無(wú)法律和政策方面的限制。4總體設(shè)計(jì)4.1 基本設(shè)計(jì)思想及流程圖基本設(shè)計(jì)思想:在用戶認(rèn)證之后,系統(tǒng)根據(jù)考生的資料隨機(jī)的從試題庫(kù)中選取試卷,在考生做完試卷且交卷之后,將會(huì)自動(dòng)在服務(wù)器端保存考的答案。要求能保證考生順利的作答以及考試的保密和安全性。圖1 操作流程圖4.2 系統(tǒng)功能結(jié)構(gòu)圖根據(jù)需求分析,在線考試系統(tǒng)的結(jié)構(gòu)圖如下:圖2 系統(tǒng)功能結(jié)構(gòu)圖4.3 系統(tǒng)架構(gòu)本系統(tǒng)采用ASP.NET應(yīng)用程序典型的三層架構(gòu)模式,其結(jié)構(gòu)如圖1所示圖3 三層架構(gòu)模式結(jié)構(gòu)圖各層功能介紹:數(shù)據(jù)訪問(wèn)層:系統(tǒng)最低層,提供數(shù)據(jù)庫(kù)操作的接口和存儲(chǔ)本系統(tǒng)所有數(shù)據(jù);業(yè)務(wù)邏輯層:處于頁(yè)面展示層與數(shù)據(jù)訪問(wèn)層之間,與數(shù)據(jù)庫(kù)直接關(guān)聯(lián),同時(shí)又為頁(yè)面展示層服務(wù)。實(shí)現(xiàn)業(yè)務(wù)的具體邏輯,如考生報(bào)名、登錄參考、試卷試題管理等;頁(yè)面展示層:系統(tǒng)最外層,將業(yè)務(wù)功能在瀏覽器上顯示出來(lái),用戶通過(guò)界面對(duì)系統(tǒng)進(jìn)行操作。4.3.1數(shù)據(jù)訪問(wèn)層數(shù)據(jù)訪問(wèn)層完成所有與數(shù)據(jù)庫(kù)交互的工作,本系統(tǒng)只包括一個(gè)類SQLHelper。這個(gè)類的功能是向數(shù)據(jù)庫(kù)提交SQL語(yǔ)句,并返回相應(yīng)的操作結(jié)果。配置數(shù)據(jù)庫(kù)連接:在Web.config文件中指定數(shù)據(jù)庫(kù)連接字符串配置信息,代碼如下SQLHelper類成員:表1 SQLHelper類成員說(shuō)明屬性/方法功能說(shuō)明Conn保護(hù)變量,數(shù)據(jù)庫(kù)連接SqlConnection對(duì)象ConnStr保護(hù)變量,數(shù)據(jù)庫(kù)連接串Open連接數(shù)據(jù)庫(kù)Close關(guān)閉數(shù)據(jù)庫(kù)連接Dispose釋放數(shù)據(jù)庫(kù)連接資源ExecutSQL執(zhí)行一條非查詢(Select)類型的SQL命令GetDataRow根據(jù)輸入SQL命令,獲取一個(gè)DataRow對(duì)象GetDataSet根據(jù)輸入SQL命令,獲取一個(gè)DataSet對(duì)象GetDataReader根據(jù)SQL命令,獲取一個(gè)DataReader對(duì)象Insert利用一個(gè)Hash表存儲(chǔ)數(shù)據(jù),向數(shù)據(jù)庫(kù)插入數(shù)據(jù)Update利用一個(gè)Hash表存儲(chǔ)數(shù)據(jù),修改數(shù)據(jù)庫(kù)中的數(shù)據(jù)4.3.2業(yè)務(wù)邏輯層科目類Category.cs公告類News.cs試卷類Paper.cs試題類Question.cs分?jǐn)?shù)類Score.cs用戶類User.cs4.3.3頁(yè)面顯示層公告管理模塊News*.aspx用戶管理模塊User*.aspx試題管理模塊Question*.aspx試卷管理模塊Paper*.aspx試卷評(píng)分模塊Score*.aspx頁(yè)面首面Default.aspx考試頁(yè)面Exam.aspx注冊(cè)頁(yè)面Register.aspx公告信息頁(yè)面NewsInfo.aspx4.4數(shù)據(jù)庫(kù)的設(shè)計(jì)4.4.1 創(chuàng)建數(shù)據(jù)庫(kù)首先在SQL Server 2005的管理器中創(chuàng)建一個(gè)名為ExamDB的數(shù)據(jù)庫(kù)。4.4.2 創(chuàng)建表數(shù)據(jù)庫(kù)ExamDB包含以下6個(gè)表:考試科目表(Exam_Category)、用戶信息表(Exam_Member)、站內(nèi)公告表(Exam_News)、試卷信息表(Exam_Paper)、試題信息表(Exam_Question)、分?jǐn)?shù)信息表(Exam_Score)。下面分別介紹這些表的結(jié)構(gòu)。表2 考試科目表(Exam_Category)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1IDint4考試科目序號(hào)2ExamLevelint4考試級(jí)別3ExamSubjectnvarchar20考試科目名稱表3 分?jǐn)?shù)信息表(Exam_Score)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1IDint4試題序號(hào)2UserIDnvarchar7考試科目序號(hào)3TestIDint4試題題目4StartTimedatetime8考試開(kāi)始時(shí)間5EndTimedatetime8考試結(jié)束時(shí)間6TotalScoreint4考試總成績(jī)7sUserAnswerNtext用戶單選答案8sRightAnswerNtext單選標(biāo)準(zhǔn)答案D9bUserAnswerNtext用戶填空答案10bRightAnswerNtext填空標(biāo)準(zhǔn)答案11IsCheckBit1成績(jī)是否審核12IsExamedBit1是否參加考試表4 站內(nèi)公告表(Exam_News)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1IDint4公告序號(hào)2Titlentext公告標(biāo)題3Textntext公告內(nèi)容4Timedatetime8發(fā)布時(shí)間表5 用戶信息表(Exam_Member)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1UserIDnvarchar7考生準(zhǔn)考證號(hào)/登錄名2CategoryIDInt4考試科目序號(hào)3UserPwdnvarchar50用戶登錄密碼4UserIDCardnvarchar18用戶身份證號(hào)5UserNamenvarchar50用戶姓名6UserSexnvarchar2用戶性別(男,女)7UserEmailnvarchar50用戶電子郵箱8UserTypeint4用戶類型(1考生,2閱卷人,3管理員)9IsCheckbit1考生審核(0未審核,1審核)表6 試卷信息表(Exam_Paper)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1TestIDInt4試卷序號(hào)2CategoryIDInt4考試科目序號(hào)3SingleCountInt4單選題題數(shù)4SingleScoreInt4單選題分值5BlankCountInt4填空題題數(shù)6BlankScoreInt4填空題分值7StartTimedatetime8考試開(kāi)始時(shí)間8EndTimedatetime8考試結(jié)束時(shí)間9TestTimeInt4考試總時(shí)間表7 試題信息表(Exam_Question)編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)長(zhǎng)度說(shuō)明1IDInt4試題序號(hào)2CategoryIDInt4考試科目序號(hào)3QuestionDescNtext試題題目4QuestionTypeInt4試題類型(1單選題,2填空題)5OptionANtext單選備選答案A6OptionBNtext單選備選答案B7OptionCNtext單選備選答案C8OptionDNtext單選備選答案D9AnswerNtext填空備選答案4.4.3關(guān)系設(shè)計(jì)圖4 數(shù)據(jù)庫(kù)關(guān)系設(shè)計(jì)圖4.5數(shù)據(jù)訪問(wèn)接口及通用組件實(shí)現(xiàn)對(duì)數(shù)據(jù)訪問(wèn)的一些輔助和包裝及某些通用功能,包括三個(gè)類。4.5.1 獲取安全數(shù)據(jù)(GetSafeData)包含一系列從DataRow對(duì)象中,安全獲取數(shù)據(jù)的靜態(tài)方法。表8 GetSafeData類成員說(shuō)明屬性/方法功能說(shuō)明ValidateDataRow_S從DataRow中獲取字符串,如果不存在,返回System.String.EmptyValidateDataRow_N從DataRow中獲取整數(shù),如果不存在,返回System.Int32.MinValueValidateDataRow_T從DataRow中獲取浮點(diǎn)數(shù),如果不存在,返回System. Double.MinValueValidateDataRow_F從DataRow中獲取時(shí)間數(shù)據(jù),如果不存在,返回System. DateTime.MinValue4.5.2 構(gòu)造SQL語(yǔ)句(SQLString)GetQuotedString:將字符串加上SQL語(yǔ)句中常用的單引號(hào)“”;GetConditionClause:構(gòu)造SQL語(yǔ)句中的條件子句,這個(gè)方法接收一個(gè)哈希表參數(shù),利用哈希表中的每一項(xiàng)都是一個(gè)DictionaryEntry對(duì)象的對(duì)特征,構(gòu)造SQL語(yǔ)句中的條件子句。4.5.3 字符串加密(Security)對(duì)一字符串進(jìn)行MD5加密操作,保證數(shù)據(jù)的安全。5網(wǎng)站后臺(tái)主要功能模塊5.1 用戶登錄模塊設(shè)計(jì)5.1.1前臺(tái)頁(yè)面設(shè)計(jì)圖5 管理員/閱卷人登錄模塊管理員/閱卷人輸入賬號(hào)及密碼,系統(tǒng)查詢數(shù)據(jù)庫(kù),自動(dòng)配對(duì)用戶類型,進(jìn)入相應(yīng)的管理頁(yè)面。如果出現(xiàn)錯(cuò)誤,系統(tǒng)會(huì)彈出相應(yīng)的提示信息。5.1.2后臺(tái)功能代碼單擊登錄按鈕事件: protected void btnOK_Click(object sender, EventArgs e) string UserName = txtName.Text; string UserPwd = Security.Encrypt(txtPwd.Text); User user = new User(); user.LoadNameData(UserName); if (user.Exist)/如果用戶存在 if (user.UserPwd = UserPwd)/如果密碼,轉(zhuǎn)入留言列表頁(yè)面 Session.Add(UserID, user.UserID); Session.Add(UserIDCard, user.UserIDCard); Session.Add(UserName, user.UserName); if (user.UserType = 3) SessionIsAdmin = Admin; Response.Redirect(Admin/AdminInfo.aspx); else SessionIsAdmin = Teacher; Response.Redirect(Teacher/Default.aspx); else/如果密碼錯(cuò)誤,給出提示,光標(biāo)停留在密碼框中 Response.Write(alert(密碼錯(cuò)誤,請(qǐng)重新輸入密碼!); txtPwd.Focus(); else/如果用戶不存在 Response.Write(alert(對(duì)不起,用戶不存在!); 5.2 后臺(tái)管理頁(yè)面設(shè)計(jì)管理頁(yè)面只允許具有管理員權(quán)限的人員訪問(wèn),因此在每個(gè)管理頁(yè)面都有相關(guān)的權(quán)限判斷,以保證系統(tǒng)的安全使用。if (SessionIsAdmin = null) Response.Write(alert(管理員未登錄,非法請(qǐng)求!);); Response.Write(window.location.href=./AdminLogin.aspx;);5.2.1人員管理頁(yè)面設(shè)計(jì)圖6 人員管理此頁(yè)面用于管理所有用戶,包括考生、閱卷人和管理員。通過(guò)用戶類型下拉框選擇相應(yīng)類型的用戶,在GridView中會(huì)顯示出用戶詳細(xì)的信息。當(dāng)考生報(bào)名成功后,前來(lái)交費(fèi)時(shí),管理員可以通過(guò)審核方式來(lái)確認(rèn)考生的參考資格。管理員也可以刪除一些無(wú)效用戶。審核事件代碼: foreach (string UserID in selectedUsers) Hashtable ht = new Hashtable(); ht.Add(IsCheck, 1); (new User().Check(ht, UserID); Response.Write(alert(審核考生成功!);); Query();刪除事件代碼: foreach (string UserID in selectedUsers) User.Delete(UserID); Query();5.2.2試題管理頁(yè)面設(shè)計(jì)圖7 試題管理此頁(yè)面用于管理所有試題信息。通過(guò)考試科目下拉框選擇相應(yīng)的科目,在GridView中會(huì)顯示出試題的詳細(xì)信息,包括題干、備選答案和正確答案。管理員可以對(duì)試題進(jìn)行編輯、刪除操作。操作實(shí)現(xiàn)代碼: protected void gvQuestion_RowCommand(object sender, GridViewCommandEventArgs e) int index = Convert.ToInt32(e.CommandArgument); /待處理的行下標(biāo) int questionId = -1; switch (e.CommandName) /修改 case Edit: questionId = Convert.ToInt32(gvQuestion.Rowsindex.Cells0.Text); Response.Redirect(QuestionAddEdit.aspx?id= + questionId); break; /刪除 case Delete: questionId = Convert.ToInt32(gvQuestion.Rowsindex.Cells0.Text); Question question = new Question(); question.GetSingleQuestion(questionId); question.Delete(); Response.Write(alert(刪除成功!);); gvBind(); break; default: break; 5.2.3公告管理頁(yè)面設(shè)計(jì)圖8 公告管理此頁(yè)面用于管理網(wǎng)站公告信息。通過(guò)GridView顯示出公告的詳細(xì)信息,包括編號(hào)、標(biāo)題和時(shí)間。管理員可以通過(guò)詳細(xì)信息查看公告內(nèi)容,也可以對(duì)公告進(jìn)行編輯、刪除操作。GridView數(shù)據(jù)綁定: private void InitData() News news = new News(); DataSet ds = news.GetNews(); gvNewsList.DataSource = ds; gvNewsList.DataBind(); 操作代碼: protected void gvNewsList_RowCommand(object sender, GridViewCommandEventArgs e) int index = Convert.ToInt32(e.CommandArgument); /待處理的行下標(biāo) int newsId = -1; switch (e.CommandName) /修改 case Edit: newsId = Convert.ToInt32(gvNewsList.Rowsindex.Cells0.Text); Response.Redirect(NewsAddEdit.aspx?id= + newsId); break; /刪除 case Delete: newsId = Convert.ToInt32(gvNewsList.Rowsindex.Cells0.Text); News news = new News(); news.GetSingleNews(newsId); news.Delete(); Response.Write(alert(刪除成功!);); InitData(); break; default: break; 5.2.4密碼管理頁(yè)面設(shè)計(jì)圖9 管理員密碼修改此頁(yè)面用于管理員信息修改。當(dāng)管理員名及原密碼均正確時(shí),可以對(duì)管理員的相關(guān)信息進(jìn)行修改操作。否則將無(wú)法修改相關(guān)信息。修改事件代碼: if ( UserOldPwd = user.UserPwd ) Hashtable ht = new Hashtable(); ht.Add(UserPwd, SqlStringConstructor.GetQuotedString(UserPwd); ht.Add(UserIDCard, SqlStringConstructor.GetQuotedString(txtIDCard.Text); user.Update(ht); Response.Write(alert(更新數(shù)據(jù)成功,請(qǐng)重新登錄!); Session.Abandon(); Response.Write(window.location.href=./AdminLogin.aspx;); else Response.Write(alert(原密碼錯(cuò)誤!); 5.2.5試卷成績(jī)信息管理頁(yè)面設(shè)計(jì)圖10 試卷成績(jī)信息此頁(yè)面用于管理考生考試信息。在GridView中顯示出了所有考生的考試信息,包括考試科目、總成績(jī)和是否通過(guò)閱卷人審核。閱卷人可以查看考試的詳細(xì)信息,并進(jìn)行進(jìn)一步地操作,如圖11所示。單擊審核事件: foreach ( string ID in selectedIDs ) Hashtable ht = new Hashtable(); ht.Add(IsCheck, 1); (new Score().Check(ht, ID); Response.Write(alert(審核試卷成功!);); Query();圖11 試卷成績(jī)信息修正此頁(yè)面用于顯示考試的詳細(xì)信息。閱卷人可以查看到考生考試的具體信息,包括考試時(shí)間、成績(jī)以及每一道題的答案。閱卷人可以根據(jù)考生的答題情況,對(duì)考生分?jǐn)?shù)進(jìn)行相應(yīng)的修改。單擊修正事件: protected void btnModify_Click(object sender, EventArgs e) if (txtModifyScore.Text != ) Score score = new Score(); score.ID = Convert.ToInt32(Request.QueryStringid); Hashtable ht = new Hashtable(); ht.Add(TotalScore, SqlStringConstructor.GetQuotedString(txtModifyScore.Text); ht.Add(IsCheck, 1); score.Update(ht); Response.Write(試卷得分修改成功!); else Response.Write(alert(請(qǐng)輸入實(shí)際得分!);); 6網(wǎng)站前臺(tái)主要功能模塊6.1網(wǎng)站公告頁(yè)面設(shè)計(jì)圖12 網(wǎng)站公告模塊數(shù)據(jù)綁定: private void BindNewsData() /定義獲取數(shù)據(jù)的類 News news = new News(); DataSet ds = news.GetTop10News(); /設(shè)定控件的數(shù)據(jù)源 gvNews.DataSource = ds; /綁定控件的數(shù)據(jù) gvNews.DataBind(); 6.2考生在線報(bào)名頁(yè)面設(shè)計(jì)圖13 網(wǎng)上報(bào)名此頁(yè)面用于考生在線注冊(cè)。進(jìn)入頁(yè)面后,系統(tǒng)會(huì)自動(dòng)生成準(zhǔn)考證號(hào)??忌梢訡heck自己的身份證是否已經(jīng)報(bào)名,以免重復(fù)報(bào)名。如果此考生已經(jīng)報(bào)名,或其它信息填寫錯(cuò)誤,系統(tǒng)會(huì)給出相應(yīng)的提示信息。單擊報(bào)名按鈕事件 protected void btnReg_Click(object sender, EventArgs e) string userIDCard = txtIDCard.Text; string userPwd = Security.Encrypt(txtPwd.Text); if ( !(new User().HasUser(userIDCard) ) Hashtable ht = new Hashtable(); ht.Add(UserID, SqlStringConstructor.GetQuotedString(lblID.Text); ht.Add(UserIDCard, SqlStringConstructor.GetQuotedString(txtIDCard.Text); ht.Add(UserName, SqlStringConstructor.GetQuotedString(txtName.Text); ht.Add(UserPwd, SqlStringConstructor.GetQuotedString(userPwd); ht.Add(CategoryID, SqlStringConstructor.GetQuotedString(ddlSubject.SelectedValue.ToString(); ht.Add(UserEmail, SqlStringConstructor.GetQuotedString(txtEmail.Text); if ( rbMale.Checked ) ht.Add(UserSex, SqlStringConstructor.GetQuotedString(rbMale.Text); else ht.Add(UserSex, SqlStringConstructor.GetQuotedString(rbFemale.Text); User user = new User(); user.Add(ht); Session.Add(user_id, user.UserID); Response.Write(alert(報(bào)名成功!請(qǐng)到相關(guān)部門交費(fèi)完成報(bào)名); Response.Write(window.close(); else Response.Write(alert(同一身份證只能報(bào)考一科!); txtIDCard.Text = ; 6.3考生登錄頁(yè)面設(shè)計(jì)圖14 考生登錄此頁(yè)面用于考生考試登錄??忌顚懻_的準(zhǔn)考證號(hào)、密碼及驗(yàn)證碼后,會(huì)進(jìn)入考試頁(yè)面。如果輸入驗(yàn)證碼不正確,或其它信息填寫錯(cuò)誤,系統(tǒng)會(huì)給出相應(yīng)的提示信息。6.4 考生在線考試頁(yè)面設(shè)計(jì)圖15 在線考試此頁(yè)面為考生參考主頁(yè)面。為了方便考生掌握考試時(shí)間,頁(yè)面上有計(jì)時(shí)器??荚嚂r(shí)間一到,系統(tǒng)會(huì)自動(dòng)提交試卷并保存相關(guān)答題信息,防止考生超時(shí)答卷。為了避免考生作弊,系統(tǒng)還禁用了相關(guān)按鍵,如F5、Alt、Ctrl + C等,以保證考試的公平公正??荚囉?jì)時(shí)代碼(JavaScript): /計(jì)時(shí)函數(shù) 防考試作弊代碼(JScript):function document_onkeydown() try/禁止altif(event.altKey=true)ShowMessageBox(不可以用特殊功能鍵!);event.altKey=fals
展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
提示  裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。
關(guān)于本文
本文標(biāo)題:畢業(yè)論文——基于BS的計(jì)算機(jī)等級(jí)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
鏈接地址:http://m.appdesigncorp.com/article/118210701.html

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!