畢業(yè)設(shè)計(jì)(論文)試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩69頁(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)介

1、 論文編號(hào):試卷管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)管理員及題庫(kù)維護(hù)模塊的實(shí)現(xiàn)the design and realization of paper management system the realization of administrator and question bank maintenance module 摘要在以往教師想出一份試卷,就得手動(dòng)的查閱題庫(kù)或查找相關(guān)書(shū)籍,然后手動(dòng)的生成試卷。這樣即費(fèi)時(shí)又費(fèi)力,而且很難保證試題的覆蓋面和把握好試卷的難度。開(kāi)發(fā)本軟件正是為了能夠幫助教師輕松的出一份高質(zhì)量的試卷。試卷管理系統(tǒng)是為教師開(kāi)發(fā)的一個(gè)試卷管理工具。本系統(tǒng)的設(shè)計(jì)是基于.net技術(shù)平臺(tái),采用ado

2、.net數(shù)據(jù)訪問(wèn)技術(shù)和相關(guān)性能優(yōu)化技術(shù),利用c#.net語(yǔ)言設(shè)計(jì)實(shí)現(xiàn),以sql server 2000作為后臺(tái)數(shù)據(jù)庫(kù)的管理系統(tǒng),系統(tǒng)架構(gòu)則是當(dāng)前較為流行的b/s模式。本軟件實(shí)現(xiàn)了以下主要功能:1.登錄;2.專業(yè)管理;3.科目管理;4.教師管理;5.題型管理;6.選課管理;7.信息管理;8.章節(jié)管理;9.題庫(kù)管理;10.生成試卷。測(cè)試表明本軟件在windows平臺(tái)運(yùn)行穩(wěn)定,并能夠順利生成word類型的試卷,基本達(dá)到了預(yù)期的要求!關(guān)鍵詞:試卷管理; 數(shù)據(jù)庫(kù); c#; b/sabstractin the past, teachers come up with a paper, you have to

3、 manually access question bank or find relevant books, and then manually create paper. time-consuming and also strenuous like this, and very difficult to guarantee coverage rate and paper degree of difficulty of examination question. development of this software is easy to be able to help teachers o

4、ut of a high-quality papers.paper management system is a paper management tool developed for teachers.the design of the system is based on the technology platform of .net,using data access technology of ado.net and related performance optimization technology.its brought about by language design of c

5、#.net,using sql server 2000 as the management system of back-end database,and the system architecture is the more popular b/s mode in the current.these functions of this website are as follows: one. log; two. professional manage; three. subject manage; four. teacher manage; five. questions in manage

6、ment; six. elective manage; seven. information manage; eight. chapter manage; nine. examination manage; ten. create paper. tests show that the software runs in windows platform, stable, and able to successfully generate word types of paper, it is basic reach the requests.key words: paper management;

7、 database; c#; b/s;目 錄摘要iabstractii目 錄iii第1章 引言11.1開(kāi)發(fā)背景11.2研究意義11.3發(fā)展現(xiàn)狀21.4系統(tǒng)構(gòu)建2第2章 需求分析42.1 系統(tǒng)的功能和特點(diǎn)42.1.1 系統(tǒng)功能42.1.2 系統(tǒng)特點(diǎn)52.2 功能需求62.2.1 試卷管理系統(tǒng)結(jié)構(gòu)圖62.2.2 功能描述72.3開(kāi)發(fā)環(huán)境82.3.1 visual studio 2005 概述82.3.2 sql server2000概述82.3.3 c#介紹10第3章 總體設(shè)計(jì)113.1 系統(tǒng)功能分析113.1.1 功能劃分113.1.2 功能模塊圖113.2 數(shù)據(jù)庫(kù)總體設(shè)計(jì)123.2.1 關(guān)系e

8、-r圖123.2.2 數(shù)據(jù)表的設(shè)計(jì)14第4章 詳細(xì)設(shè)計(jì)184.1 類的設(shè)計(jì)184.1.1 數(shù)據(jù)操作類sqlhelper184.1.2 邏輯處理類services194.1.3 常用函數(shù)類functions204.2題庫(kù)維護(hù)模塊的實(shí)現(xiàn)204.2.1 修改選擇題214.2.2 修改填空題234.2.3 修改簡(jiǎn)述題244.2.4 修改設(shè)計(jì)題254.3 專業(yè)管理模塊的實(shí)現(xiàn)264.3.1 添加專業(yè)功能264.3.2 編輯專業(yè)功能274.4科目管理模塊的實(shí)現(xiàn)284.4.1添加科目功能284.4.2編輯科目功能294.5教師管理模塊的實(shí)現(xiàn)304.5.1添加教師功能304.5.2編輯教師功能314.6題型管理

9、模塊的實(shí)現(xiàn)324.6.1添加題型功能324.6.2編輯題型功能33第5章 系統(tǒng)測(cè)試355.1測(cè)試的目的和原則355.2測(cè)試方法355.3 測(cè)試過(guò)程365.3.1 題庫(kù)維護(hù)測(cè)試365.3.2專業(yè)管理測(cè)試415.3.3 科目管理測(cè)試435.3.4教師管理測(cè)試435.3.5題型管理測(cè)試43第6章 結(jié) 論446.1總結(jié)446.2心得體會(huì)44致 謝45參考文獻(xiàn)46附 錄47附錄a: 附加圖、表47附錄b: 主要源程序48附錄c: 軟件使用說(shuō)明書(shū)69 69論文第1章 引言1.1開(kāi)發(fā)背景隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,它被更廣泛地應(yīng)用在我國(guó)的各行各業(yè)中。近年來(lái),國(guó)家高等教育事業(yè)的大力發(fā)展, 高校招生規(guī)模的逐年擴(kuò)大

10、, 專業(yè)設(shè)置的增加, 對(duì)學(xué)校教學(xué)質(zhì)量監(jiān)控提出了更高的要求,尤其是各個(gè)學(xué)校試題管理的復(fù)雜性和要求統(tǒng)計(jì)分析的及時(shí)性,使傳統(tǒng)的管理方式有著不可克服的困難。但隨著計(jì)算機(jī)進(jìn)入學(xué)校, 計(jì)算機(jī)輔助教育在教育系統(tǒng)中的應(yīng)用,使得我們解決起這些問(wèn)題來(lái)又變得輕而易舉。給教育改革帶來(lái)美好的前景。近幾年來(lái),很多高等院校研究和開(kāi)發(fā)了試卷管理系統(tǒng),計(jì)算機(jī)輔助手段已得到廣泛應(yīng)用。這不僅提高了教學(xué)質(zhì)量和教學(xué)效果,而且也帶來(lái)了教學(xué)評(píng)價(jià)的革命。在教學(xué)管理中,為實(shí)現(xiàn)教考分開(kāi),更加合理、公平、公正、公開(kāi)地進(jìn)行各種考試,利用計(jì)算機(jī)進(jìn)行考試管理系統(tǒng),輔助教師命題組卷已成為各院校改個(gè)的重要內(nèi)容之一。使用試卷管理系統(tǒng)可以大大提高工作效率,不論

11、是抽題、組卷,還是提取答案、打印試卷,都非常迅速。同時(shí),用計(jì)算機(jī)隨機(jī)抽取試題,可以排除人為因素和誤差,在試題的范圍、難度、題型等方面統(tǒng)一標(biāo)準(zhǔn),試卷規(guī)范,保證教育測(cè)量的客觀、公正。但一直以來(lái), 人們習(xí)慣于使用傳統(tǒng)人工的方式制作試卷, 這種制作方式存在著許多缺點(diǎn),如:效率低、保密性差、容易出錯(cuò)等,另外,即使把以前的試題都保存起來(lái), 但時(shí)間一長(zhǎng), 將產(chǎn)生大量的文件和數(shù)據(jù), 這對(duì)于查找、更新和維護(hù)都帶來(lái)了很大困難。作為計(jì)算機(jī)應(yīng)用的一部分, 使用計(jì)算機(jī)對(duì)試卷進(jìn)行管理, 有著手工管理所無(wú)法比擬的優(yōu)點(diǎn), 例如:效率高、組卷迅速、查找方便、可靠性高、保密性好、成本低等。這些優(yōu)點(diǎn)能夠極大地提高教師的工作效率,

12、有利于建立科學(xué)化的教學(xué)監(jiān)督與評(píng)估體系。因此,開(kāi)發(fā)這樣一套試卷管理系統(tǒng)成為很有必要的事情。1.2研究意義一個(gè)現(xiàn)代化的學(xué)校管理,擁有數(shù)千名的學(xué)生考試信息,那么如何管理這么龐大的學(xué)生考試信息檔案呢?這時(shí),開(kāi)發(fā)一個(gè)功能完善的試卷管理系統(tǒng)就必不可少了。所以需要設(shè)計(jì)開(kāi)發(fā)一個(gè)實(shí)現(xiàn)試卷管理的穩(wěn)定、高效、準(zhǔn)確、便捷、安全的系統(tǒng)。從學(xué)校的試卷制作到成績(jī)查詢實(shí)現(xiàn)了自動(dòng)化的模式,從而提高了工作效率。試卷管理系統(tǒng)是一個(gè)現(xiàn)代高校不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的管理者至關(guān)重要,所以試卷管理系統(tǒng)能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵児芾硎侄?。用visual studio2005構(gòu)建的試卷管理系統(tǒng),很符合穩(wěn)定、高效、準(zhǔn)確、便捷

13、、安全的要求。1.3發(fā)展現(xiàn)狀 隨著計(jì)算機(jī)的日益普及, 教育教學(xué)水平的不斷提高, 如何利用計(jì)算機(jī)建立統(tǒng)一的試題庫(kù),開(kāi)發(fā)出智能型、多功能、通用型試題庫(kù)成為多年來(lái)我們一直關(guān)心的課題。計(jì)算機(jī)試題庫(kù)系統(tǒng),是將編好的試題、答案事先存入計(jì)算機(jī)的數(shù)據(jù)庫(kù)中,使用時(shí),通過(guò)軟件的控制,按照一定的方式和規(guī)則,將試題抽取、組合,形成試卷,打印輸出。試題、試卷設(shè)計(jì)是考試工作的重要環(huán)節(jié)。為此許多大專院校開(kāi)發(fā)多門課程的試題庫(kù),并有部分已商品化,為考教分離打下了基礎(chǔ)。但從已商品化的試題庫(kù)看,其試題管理系統(tǒng)多為封閉式結(jié)構(gòu),所收入的備考題雖經(jīng)認(rèn)真篩選,系統(tǒng)不提供試題設(shè)計(jì)功能,致使其內(nèi)容不能根據(jù)教學(xué)內(nèi)容的需要更新,試題庫(kù)管理系統(tǒng)的通

14、用性差,為此提出一種具有框架化特征的通用試題、試卷設(shè)計(jì)系統(tǒng)的系統(tǒng)結(jié)構(gòu),并討論其實(shí)現(xiàn)方法。中國(guó)高校教學(xué)中,計(jì)算機(jī)輔助手段已得到廣泛應(yīng)用。這不僅提高了教學(xué)質(zhì)量和教學(xué)效果,而且也帶來(lái)了教學(xué)評(píng)價(jià)的革命。其中,試題庫(kù)管理系統(tǒng)的開(kāi)發(fā)與應(yīng)用取得了許多成果,但已有的試題庫(kù)管理軟件仍存在通用性差,無(wú)法處理圖形的不足,那么如何形成一份科學(xué)合理的試卷是其關(guān)鍵所在, 由于題庫(kù)管理系統(tǒng)在選題, 組卷上的靈活多樣和客觀公正, 所以試卷管理系統(tǒng)是一所學(xué)校必不可少的部分。1.4系統(tǒng)構(gòu)建本軟件是采用b/s結(jié)構(gòu)來(lái)實(shí)現(xiàn)的。b/s結(jié)構(gòu)(browser/server,瀏覽器/服務(wù)器模式),是web興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,web瀏覽器

15、是客戶端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)、維護(hù)和使用??蛻魴C(jī)上只要安裝一個(gè)瀏覽器(browser),如netscape navigator或internet explorer,服務(wù)器安裝oracle、sybase、informix或 sql server等數(shù)據(jù)庫(kù)。瀏覽器通過(guò)web server 同數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交互。以目前的技術(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

16、,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)管理軟件更是方便、快捷、高效。隨著學(xué)校管理工作的不斷細(xì)化,自動(dòng)化的試卷管理系統(tǒng)就顯得非常必要,而運(yùn)用開(kāi)發(fā)軟件與數(shù)據(jù)庫(kù)管理軟件,用于項(xiàng)目開(kāi)發(fā),程序編制,數(shù)據(jù)庫(kù)創(chuàng)建,來(lái)開(kāi)發(fā)一套試卷管理系統(tǒng)就顯得十分重要,在這里,要構(gòu)建這樣的一套管理系統(tǒng),首先得做一個(gè)需求分析,在需求分析中包含了功能需求分析和數(shù)據(jù)庫(kù)需求分析。接著進(jìn)行詳細(xì)設(shè)計(jì), 詳細(xì)設(shè)計(jì)是在需求分析的基礎(chǔ)上實(shí)現(xiàn)各個(gè)模塊功能的具體過(guò)程。然后就是整個(gè)項(xiàng)目系統(tǒng)的編碼階段,這期

17、間的工作非常繁瑣,是比較麻煩的一部分。這個(gè)階段之后是測(cè)試,維護(hù)。這樣,整個(gè)系統(tǒng)基本上就完成了。第2章 需求分析2.1 系統(tǒng)的功能和特點(diǎn)2.1.1 系統(tǒng)功能系統(tǒng)針對(duì)不同的用戶,設(shè)置了不同的權(quán)限,在用戶登錄時(shí)根據(jù)權(quán)限跳至不同的界面,從而可以選擇相應(yīng)的操作。系統(tǒng)采用了較為先進(jìn)的b/s結(jié)構(gòu),具有結(jié)構(gòu)靈活、功能齊全等突出特點(diǎn)。使用本系統(tǒng)可以方便地管理專業(yè)、科目、教師、選課和試卷等基本信息,及時(shí)調(diào)整教學(xué)進(jìn)度,提高學(xué)校的管理和教學(xué)水平,從而使高校的試卷管理真正實(shí)現(xiàn)無(wú)紙化。本系統(tǒng)實(shí)現(xiàn)的功能主要包括:用戶管理,系統(tǒng)用戶包括:管理員和教師,用戶在選擇角色后,可以分別進(jìn)入對(duì)應(yīng)的界面:管理員在進(jìn)入管理員管理界面后,可

18、以對(duì)專業(yè)、科目、教師、題型和選課進(jìn)行增、刪、改的操作,但管理員沒(méi)有修改教師信息的權(quán)限;教師在初次登錄時(shí)需要根據(jù)自己的教師號(hào)以及默認(rèn)的密碼登錄,進(jìn)入教師管理界面后可以修改信息及密碼,對(duì)章節(jié)、題庫(kù)進(jìn)行增、刪、改等操作,也可以選擇組卷方式自動(dòng)、手動(dòng)以及抽取現(xiàn)有試卷三種方式。自動(dòng)生成試卷是系統(tǒng)根據(jù)用戶設(shè)置的題型、難易程度隨機(jī)組成試卷;手動(dòng)組卷是教師可以自己選擇題型、分值、題目,可以自己決定試卷的難易程度;抽取試卷是直接用數(shù)據(jù)庫(kù)中已經(jīng)存在的試卷。試卷生成包含有實(shí)現(xiàn)設(shè)置卷頭、預(yù)覽和打印試卷及答案的功能。本系統(tǒng)中,用戶首先登錄,登錄時(shí),有身份區(qū)分,分為普通用戶和管理員。輸入系統(tǒng)判定數(shù)據(jù)庫(kù)中是否由此用戶,這是

19、個(gè)驗(yàn)證過(guò)程,通過(guò)驗(yàn)證才能確定登錄。而普通用戶與管理員的區(qū)別是兩者之間的權(quán)限不同。系統(tǒng)流程圖如圖2.1所示。圖2.1 系統(tǒng)流程圖2.1.2 系統(tǒng)特點(diǎn)本系統(tǒng)最明顯的特點(diǎn)就是采用b/s架構(gòu),這樣大大減輕了系統(tǒng)維護(hù)的成本和工作量,易于操作和維護(hù);同時(shí),基于代碼重用原則,本系統(tǒng)將常用的數(shù)據(jù)庫(kù)操作定義在數(shù)據(jù)庫(kù)數(shù)據(jù)操作類sqlhelper中,將業(yè)務(wù)邏輯處理定義在services類中,將一些常用的函數(shù)定義在functions類中,這樣可以方便實(shí)現(xiàn)代碼重用。在功能上,本系統(tǒng)對(duì)用戶實(shí)行分權(quán)限管理,以滿足不同用戶的不同需求,保證了數(shù)據(jù)的安全;在試卷管理功能中,組卷方式,有三種組卷方式抽取現(xiàn)有試卷、自動(dòng)生成試卷和手動(dòng)

20、生成試卷,方便教師選擇自己喜歡的組卷方式;在試卷預(yù)覽功能中,教師可以將試卷在word中預(yù)覽并保存,方便教師預(yù)覽以及修改試卷格式。本系統(tǒng)作為計(jì)算機(jī)輔助教學(xué)軟件的一部分,與多媒體教學(xué)及其他類軟件相比,有著自己的特點(diǎn): 1本軟件界面友好、操作簡(jiǎn)便,穩(wěn)定性好;2本軟件能夠源源不斷的向題庫(kù)內(nèi)添加新試題; 3本軟件能夠按照一定的算法自動(dòng)生成試卷,并可以人工干預(yù),修改試題;同時(shí)也可以直接手工選題;本軟件的實(shí)現(xiàn)有著自己的特點(diǎn),決定做好本軟件有著非常重要的實(shí)際意義。1本軟件作為一種新生的、趨向成熟的計(jì)算機(jī)輔助教學(xué)軟件,對(duì)課堂教學(xué)測(cè)試及期中、期末考試出題具有很大的幫助,節(jié)省了人力,使教學(xué)走向自動(dòng)化軌道;2本軟件收

21、集了大量的習(xí)題,是一本數(shù)量大、質(zhì)量高的高效超能型教材習(xí)題集;3本軟件的自動(dòng)組卷功能及試卷維護(hù)功能節(jié)省了教師的時(shí)間與精力,可以集中精力全身心的投入到教學(xué)中,有利于提高教師素質(zhì)及教學(xué)質(zhì)量;2.2 功能需求2.2.1 試卷管理系統(tǒng)結(jié)構(gòu)圖試卷管理系統(tǒng)的結(jié)構(gòu)圖,如圖2.2所示。主控程序信息管理模塊題庫(kù)管理模塊用戶管理模塊組卷模塊圖2.2 試卷系統(tǒng)結(jié)構(gòu)圖 用戶管理模塊主要完成管理用戶信息及找回密碼,信息管理模塊完成包括對(duì)專業(yè)、科目、章節(jié)、教師、題型、選課、章節(jié)的有關(guān)信息的管理,題庫(kù)管理模塊完成對(duì)試題信息的管理,組卷模塊完成對(duì)三種組卷方式的管理。2.2.2 功能描述1. 登錄模塊用戶在進(jìn)入系統(tǒng)之前,要輸入正

22、確的用戶名和密碼并選擇進(jìn)入系統(tǒng)的角色教師或者管理員。如果用戶名存在且密碼與該用戶名對(duì)應(yīng)的密碼相同,即可登錄本系統(tǒng)。如果教師初次使用該系統(tǒng),系統(tǒng)管理員會(huì)指定一個(gè)特定的用戶名和密碼給教師,讓其登錄;如果用戶忘記密碼,可以運(yùn)用忘記密碼功能找回密碼;如是用戶名和密碼不正確,則會(huì)提示輸入的信息錯(cuò)誤,讓用戶重新輸入。在忘記密碼模塊中,教師只需要輸入教師編號(hào)、教師名稱以及郵箱三個(gè)參數(shù),點(diǎn)擊提交后,在數(shù)據(jù)庫(kù)表中存在與其匹配的項(xiàng),系統(tǒng)則會(huì)彈出提示框?yàn)榻處熖崾久艽a,否則會(huì)提示錯(cuò)誤的信息。2. 專業(yè)管理模塊管理員進(jìn)入系統(tǒng)后,需要在教師使用該系統(tǒng)前錄入專業(yè)信息,以方便進(jìn)行后面的信息管理,管理員可以對(duì)專業(yè)進(jìn)行查詢、添加

23、、刪除和修改的操作。3. 科目管理模塊管理員進(jìn)入系統(tǒng)后,需要在教師使用該系統(tǒng)前對(duì)各個(gè)專業(yè)的科目信息進(jìn)行添加,以便讓教師進(jìn)入系統(tǒng)后,對(duì)自己所教的科目進(jìn)行添加,為往試題庫(kù)里面錄入題做準(zhǔn)備。4. 教師管理模塊管理員進(jìn)入系統(tǒng)后,需要提前錄入需要使用試卷管理系統(tǒng)的教師的信息,以方便教師使用該系統(tǒng)進(jìn)行試卷管理,管理員可以對(duì)教師進(jìn)行查詢、添加和刪除,管理員沒(méi)有修改教師信息的權(quán)利。5. 題型管理模塊管理員進(jìn)入系統(tǒng)后,需要對(duì)試題的題型進(jìn)行添加,方便老師對(duì)題庫(kù)進(jìn)行管理。并可以對(duì)題型進(jìn)行查看、刪除及修改題型名稱。6. 選課管理模塊管理員進(jìn)入系統(tǒng)后,為教師選擇其所教學(xué)的科目,為教師進(jìn)入系統(tǒng)使用該系統(tǒng)做準(zhǔn)備。7. 信息

24、管理模塊教師在進(jìn)入系統(tǒng)后,可以對(duì)自己的個(gè)人信息如姓名、郵箱和密碼進(jìn)行修改,方便教師使用該系統(tǒng)。8. 章節(jié)管理模塊教師進(jìn)入系統(tǒng)后,可以為自己所授科目進(jìn)行章節(jié)的管理,以便錄入題的時(shí)候管理試題庫(kù)。9. 題庫(kù)管理模塊教師進(jìn)入系統(tǒng)后,對(duì)題庫(kù)錄入題,并可以對(duì)題庫(kù)中的題進(jìn)行查看、修改和刪除。10.試卷生成模塊該功能由教師完成,生成試卷總共有抽取、自動(dòng)和手動(dòng)三種方式。教師可以根據(jù)自己情況選擇合適的方式。自動(dòng)生成試卷是系統(tǒng)根據(jù)用戶設(shè)置的題型、難易程度隨機(jī)組成試卷;手動(dòng)組卷是教師可以自己選擇題型、分值、題目,可以自己決定試卷的難易程度;抽取試卷是直接用數(shù)據(jù)庫(kù)中已經(jīng)存在的試卷。2.3開(kāi)發(fā)環(huán)境2.3.1 visual

25、 studio 2005 概述理解vs.net framework最簡(jiǎn)單的方式就是把它看作是執(zhí)行代碼的環(huán)境。vs.net管理代碼的執(zhí)行,包括啟動(dòng)代碼、給它賦予相應(yīng)的權(quán)限、為它分配內(nèi)存以存儲(chǔ)器數(shù)據(jù),幫助不再需要的內(nèi)存和資源等。處理執(zhí)行這些任務(wù)外,vs.net還要使用一個(gè)非常復(fù)雜的類庫(kù)vs.net基類,以便在windows上執(zhí)行大量的任務(wù)。對(duì)這些任務(wù),vs.net承擔(dān)了管理代碼的執(zhí)行和為代碼提供服務(wù)的雙重角色。從技術(shù)層面具體來(lái)說(shuō),vs.net framework主要包括兩個(gè)內(nèi)核,即通用語(yǔ)言運(yùn)行庫(kù)clr(common language runtime)和vs.net framework基本類庫(kù),它們

26、為vs.net平臺(tái)的實(shí)現(xiàn)提供了底層技術(shù)支持。vs.net的編譯過(guò)程也與以前版本的語(yǔ)言有所不同,這一點(diǎn)也是vs.net的重要特征。2.3.2 sql server2000概述sql server 2000 是microsoft 公司推出的sql server 數(shù)據(jù)庫(kù)管理系統(tǒng)該版本,繼承了sql server 7.0 版本的優(yōu)點(diǎn)同時(shí)又比它增加了許多更先進(jìn)的功能,具有使用方便,可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn),可跨越從運(yùn)行microsoft windows 98 的膝上型電腦到運(yùn)行microsoft windows 2000 的大型多處理器的服務(wù)器等多種平臺(tái)使用。sql server2000特性

27、1internet 集成。sql server 2000 數(shù)據(jù)庫(kù)引擎提供完整的xml 支持。它還具有構(gòu)成最大的web 站點(diǎn)的數(shù)據(jù)存儲(chǔ)組件所需的可伸縮性、可用性和安全功能。sql server 2000 程序設(shè)計(jì)模型與 windows dna 構(gòu)架集成,用以開(kāi)發(fā) web 應(yīng)用程序,并且sql server 2000 支持 english query 和 microsoft 搜索服務(wù)等功能,在web 應(yīng)用程序中包含了用戶友好的查詢和強(qiáng)大的搜索功能。 2可伸縮性和可用性。同一個(gè)數(shù)據(jù)庫(kù)引擎可以在不同的平臺(tái)上使用,從運(yùn)行microsoft windows 98 的便攜式電腦,到運(yùn)行 microsoft

28、windows 2000 數(shù)據(jù)中心版的大型多處理器服務(wù)器。sql server 2000 企業(yè)版支持聯(lián)合服務(wù)器、索引視圖和大型內(nèi)存支持等功能,使其得以升級(jí)到最大 web 站點(diǎn)所需的性能級(jí)別。 3企業(yè)級(jí)數(shù)據(jù)庫(kù)功能。sql server 2000 關(guān)系數(shù)據(jù)庫(kù)引擎支持當(dāng)今苛刻的數(shù)據(jù)處理環(huán)境所需的功能。數(shù)據(jù)庫(kù)引擎充分保護(hù)數(shù)據(jù)完整性,同時(shí)將管理上千個(gè)并發(fā)修改數(shù)據(jù)庫(kù)的用戶的開(kāi)銷減到最小。sql server 2000 分布式查詢使您得以引用來(lái)自不同數(shù)據(jù)源的數(shù)據(jù),就好像這些數(shù)據(jù)是 sql server 2000 數(shù)據(jù)庫(kù)的一部分,同時(shí)分布式事務(wù)支持充分保護(hù)任何分布式數(shù)據(jù)更新的完整性。復(fù)制同樣使您得以維護(hù)多個(gè)數(shù)

29、據(jù)復(fù)本,同時(shí)確保單獨(dú)的數(shù)據(jù)復(fù)本保持同步??蓪⒁唤M數(shù)據(jù)復(fù)制到多個(gè)移動(dòng)的用戶,使這些用戶自主地工作,然后將他們所做的修改合并發(fā)布服務(wù)器。 4易于安裝、部署和使用。 sql server 2000 中包括一系列管理和開(kāi)發(fā)工具,這些工具可改進(jìn)在多個(gè)站點(diǎn)上安裝、部署、管理和使用 sql server 的過(guò)程。sql server 2000 還支持基于標(biāo)準(zhǔn)的、與 windows dna 集成的程序設(shè)計(jì)模型,使 sql server 數(shù)據(jù)庫(kù)和數(shù)據(jù)倉(cāng)庫(kù)的使用成為生成強(qiáng)大的可伸縮系統(tǒng)的無(wú)縫部分。這些功能使我們得以快速交付 sql server 應(yīng)用程序,使客戶只需最少的安裝和管理開(kāi)銷即可實(shí)現(xiàn)這些應(yīng)用程序。2.3

30、.3 c#介紹c#是visualc#.net的關(guān)鍵性語(yǔ)言,它是整個(gè)visualc#.net平臺(tái)的基礎(chǔ)。與c#相比,visualc#.net所支持的其他語(yǔ)言顯然是配角身份。比如,vb.net的存在主要是對(duì)千萬(wàn)個(gè)vb開(kāi)發(fā)人員的負(fù)責(zé)。對(duì)于jscript.net和c+.net也同樣可以這么說(shuō),后者只是增加了調(diào)用visualc#.net類的c+語(yǔ)言。c#是惟一沒(méi)有在設(shè)計(jì)思路中加入以前語(yǔ)言某種遺傳的新事物。在c#中,除了可以使用許多api,更能使用visualc#.net類庫(kù)。特別是,用戶可以處理com的自動(dòng)化和c類型的函數(shù)。c#還允許用戶調(diào)用無(wú)管理的代碼,也就是在clr引擎控制之外的代碼。這種不安全的模

31、式允許用戶操作原始指針來(lái)讀和寫內(nèi)置碎片賬集控制以外的內(nèi)存。c#的設(shè)計(jì)目標(biāo):1c#旨在設(shè)計(jì)成為一種“簡(jiǎn)單、現(xiàn)代、通用”,以及面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言 2此種語(yǔ)言的實(shí)現(xiàn),應(yīng)提供對(duì)于以下軟件工程要素的支持:強(qiáng)類型檢查、數(shù)組維度檢查、未初始化的變量引用檢測(cè)、自動(dòng)垃圾收集(garbage collection,指一種自動(dòng)內(nèi)存釋放技術(shù))。軟件必須做到強(qiáng)大、持久,并具有較強(qiáng)的編程生產(chǎn)力。 3此種語(yǔ)言為在分布式環(huán)境中的開(kāi)發(fā)提供適用的組件開(kāi)發(fā)應(yīng)用。 4為使程序員容易遷移到這種語(yǔ)言,源代碼的可移植性十分重要,尤其是對(duì)于那些已熟悉c和c+的程序員而言。 5對(duì)國(guó)際化的支持非常重要。 6c#適合為獨(dú)立和嵌入式的系統(tǒng)編寫程

32、序,從使用復(fù)雜操作系統(tǒng)的大型系統(tǒng)到特定應(yīng)用的小型系統(tǒng)均適用。 7雖然c#程序在存儲(chǔ)和操作能力需求方面具備經(jīng)濟(jì)性,但此種語(yǔ)言并不能在性能和尺寸方面與c語(yǔ)言或匯編語(yǔ)言相抗衡。第3章 總體設(shè)計(jì)3.1 系統(tǒng)功能分析3.1.1 功能劃分本系統(tǒng)有兩種用戶管理員及教師。管理員主要負(fù)責(zé)為教師服務(wù),在教師登錄系統(tǒng)之前對(duì)教師、專業(yè)、科目、題型和選課進(jìn)行添加、刪除、修改和查看。教師可以對(duì)自己的個(gè)人信息進(jìn)行修改和查看,并可以對(duì)自己所教的學(xué)科的科目和自己錄入的試題進(jìn)行添加、刪除、修改、查看,同時(shí)可以自己選擇組卷方式自動(dòng)、手動(dòng)組卷以及抽取現(xiàn)有試卷,并且還可以設(shè)置卷頭、預(yù)覽和打印試卷及答案。3.1.2 功能模塊圖該系統(tǒng)主要

33、完成用戶管理、題庫(kù)管理、組卷管理和試卷管理等功能。通過(guò)該系統(tǒng),管理員可以對(duì)專業(yè)、科目、教師、題型和選課進(jìn)行管理,教師可以對(duì)個(gè)人信息、題庫(kù)、章節(jié)進(jìn)行管理并可以手動(dòng)組卷、自動(dòng)組卷和抽取現(xiàn)有試卷。其功能模塊圖,如圖3.1所示。試卷管理系統(tǒng)管理員管理題型管理專業(yè)管理教師管理教師管理科目管理選課管理章節(jié)管理信息管理題庫(kù)管理組卷管理圖3.1試卷管理功能模塊圖3.2 數(shù)據(jù)庫(kù)總體設(shè)計(jì)3.2.1 關(guān)系e-r圖1. 實(shí)體在試卷管理系統(tǒng)中,主要包括的實(shí)體為:專業(yè) 屬性:專業(yè)號(hào)、專業(yè)名稱。科目 屬性:科目號(hào)、科目名稱、專業(yè)號(hào)。章節(jié) 屬性:章節(jié)號(hào)、章節(jié)名、科目號(hào)。教師 屬性:教師編號(hào)、教師名稱、密碼、性別、郵箱、專業(yè)號(hào)

34、。題型 屬性:題型號(hào)、題型名稱。選擇題 屬性:題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題內(nèi)容、選項(xiàng)a、選項(xiàng)b、選項(xiàng)c、選項(xiàng)d、答案、分?jǐn)?shù)。填空題 屬性:題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題內(nèi)容、空一、空二、空三、空四、空五、答案、分?jǐn)?shù)。簡(jiǎn)答題 屬性:題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題內(nèi)容、答案、分?jǐn)?shù)。設(shè)計(jì)題 屬性:題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題內(nèi)容、答案、分?jǐn)?shù)。試卷 屬性:試卷號(hào)、科目號(hào)、題型號(hào)、教師號(hào)、題號(hào)、卷頭。2. 關(guān)系一個(gè)專業(yè)可以包含多門科目,一門科目可以屬于多個(gè)專業(yè)中,因此專業(yè)和科目具有多對(duì)多的聯(lián)系。一門科目可以有很多章節(jié)組成,一個(gè)章節(jié)只能屬于一門科目,因此科目和章

35、節(jié)具有一對(duì)多的關(guān)系。一個(gè)專業(yè)可以有多個(gè)教師,一個(gè)教師只能歸屬于一個(gè)專業(yè)管理,因此專業(yè)和教師具有一對(duì)多的聯(lián)系。一個(gè)教師可以教多門科目,一門科目可以讓多個(gè)教師教,因此教師和科目具有多對(duì)多的聯(lián)系。一個(gè)題型可以包含多個(gè)題,一個(gè)題只能屬于一個(gè)題型,因此題型和題屬于一對(duì)多的聯(lián)系。一個(gè)題型可以屬于多個(gè)試卷,一個(gè)試卷可以包含多個(gè)題型,因此題型和試卷屬于多對(duì)多的聯(lián)系。一個(gè)試卷只能屬于一門科目,一個(gè)科目可以組成多個(gè)試卷,因此試卷和科目屬于一對(duì)多的聯(lián)系。3. e-r圖試卷管理系統(tǒng)的關(guān)系e-r圖,如圖3.2所示n設(shè)計(jì)題題號(hào)題內(nèi)容題答案分?jǐn)?shù)題型號(hào)難易度章節(jié)號(hào)題型包含包含題型號(hào)包含章節(jié)章節(jié)號(hào)章節(jié)名科目號(hào)mn1教師教師名稱

36、密碼性別出生日期郵箱電話專業(yè)號(hào)教師編號(hào)專業(yè)專業(yè)號(hào)專業(yè)名稱管理科目科目號(hào)科目名稱專業(yè)號(hào)教試卷試卷號(hào)科目號(hào)題型號(hào)教師號(hào)卷頭nnm11n題型名稱圖3.2 系統(tǒng)關(guān)系e-r圖3.2.2 數(shù)據(jù)表的設(shè)計(jì)本試卷管理系統(tǒng)的數(shù)據(jù)庫(kù)是在sql server中實(shí)現(xiàn)的,數(shù)據(jù)庫(kù)的設(shè)計(jì)是系統(tǒng)最為重要的一環(huán),數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞將會(huì)決定后續(xù)工作的進(jìn)展。本系統(tǒng)共設(shè)計(jì)了15張表,分別是:管理員表、教師表、專業(yè)表、科目表、題型表、選課表、難易度表、題型表、選擇題表、填空題表、簡(jiǎn)答題表、設(shè)計(jì)題表、試卷表和考試表。各個(gè)表的具體字段說(shuō)明如下:管理員表(admin):包括用戶id號(hào)、密碼、姓名。如表3.1所示。表3.1 管理員表列名意義數(shù)據(jù)類

37、型長(zhǎng)度允許為空id用戶id號(hào)int4否uname用戶姓名varchar15否pwd密碼varchar15否教師表(sysuser):包括教師編號(hào)、教師姓名、密碼、專業(yè)號(hào)、郵箱和性別。如表3.2所示。表3.2 教師信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空id教師id號(hào)int否uname姓名varchar50否pwd密碼varchar50否gender年級(jí)varchar50是email郵箱varchar15是depid專業(yè)號(hào)int4否專業(yè)表(department):包括專業(yè)編號(hào)、專業(yè)名稱。如表3.3所示。表3.3 專業(yè)信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空depid專業(yè)id號(hào)int否department專業(yè)

38、名varchar15否科目表(subject):包括科目編號(hào)、科目名稱、所屬專業(yè)。如表3.4所示。表3.4 科目信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空subid科目id號(hào)int否subject科目名稱varchar15否depid專業(yè)id號(hào)int否章節(jié)表(chapter):章節(jié)號(hào)、科目號(hào)、科目名。如表3.5所示。表3.5 章節(jié)信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空chapid章節(jié)id號(hào)int否subid科目id號(hào)int否chapname章節(jié)名varchar50否選擇題表(choice):題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題目?jī)?nèi)容、答案、選項(xiàng)a、選項(xiàng)b、選項(xiàng)c、選項(xiàng)d、分值。如表3.6所示。表3.6

39、 選擇題信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空titleid題目編號(hào)int否subid科目id號(hào)int否chapid章id號(hào)int否typeid題型id號(hào)int否ned難易度varchar否content題目?jī)?nèi)容varchar50否optiona選項(xiàng)avarchar15否optionb選項(xiàng)bvarchar15否optionc選項(xiàng)cvarchar15否optiond選項(xiàng)dvarchar15否answer答案varchar10否score分值varchar10否填空表(blank):題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題目?jī)?nèi)容、答案、空1、空2、空3、空4、空5、分值。如表3.7所示。表3.7 填空

40、題信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空titleid題目編號(hào)int否subid科目id號(hào)int否chapid章id號(hào)int否typeid題型id號(hào)int否ned難易度varchar否content題目?jī)?nèi)容varchar50否blank1空一varchar30否blank2空二varchar30否blank3空三varchar30否blank4空四varchar30否blank5空五varchar30否answer答案varchar30否score分值varchar10否簡(jiǎn)答題表(short):題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題目?jī)?nèi)容、答案、分值。如表3.8所示。表3.8簡(jiǎn)答題信息表列名意義

41、數(shù)據(jù)類型長(zhǎng)度允許為空titleid題目編號(hào)int否subid科目id號(hào)int否chapid章id號(hào)int否typeid題型id號(hào)int否ned難易度varchar否content題目?jī)?nèi)容varchar50否answer答案varchar100否score分值varchar10否設(shè)計(jì)題表(design):題號(hào)、科目號(hào)、章節(jié)號(hào)、題型號(hào)、難易度、題目?jī)?nèi)容、圖表1、答案、圖表2、分值。如表3.9所示。表3.9設(shè)計(jì)題信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空titleid題目編號(hào)int否subid科目id號(hào)int否chapid章id號(hào)int否typeid題型id號(hào)int否ned難易度varchar否conten

42、t題目?jī)?nèi)容varchar100否answer答案varchar500否score分值varchar10否url1題目圖表varchar500是url2答案圖表varchar500是難易度表(ned):難易度編號(hào)、名稱。如表3.10所示。表3.10 難易度信息表列名意義數(shù)據(jù)類型長(zhǎng)度允許為空nedid難易度編號(hào)int否ned難易程度varchar15否選課表(xuanke):專業(yè)號(hào)、科目號(hào)、教師編號(hào)。見(jiàn)附錄a附表1。題型表(type):題型編號(hào)、題型名稱。見(jiàn)附錄a附表2。試卷表(test):考試編號(hào)、科目號(hào)、教師號(hào)、題號(hào)、卷頭。見(jiàn)附錄a附表3??荚嚤?exam):編號(hào)、考試編號(hào)。見(jiàn)附錄a附表4。卷

43、頭表(header):編號(hào)、卷頭。見(jiàn)附錄a附表5。第4章 詳細(xì)設(shè)計(jì)本文主要負(fù)責(zé)對(duì)題庫(kù)維護(hù)模塊、專業(yè)管理模塊、科目管理模塊、教師管理模塊、題型管理模塊的設(shè)計(jì),下面是這些模塊的幾種基本操作:1. 添加操作系統(tǒng)將向數(shù)據(jù)庫(kù)中添加一條新的記錄,并修改相關(guān)表的信息(如在添加專業(yè)信息時(shí),系統(tǒng)將自動(dòng)修改專業(yè)的基本信息)2. 查詢操作系統(tǒng)根據(jù)查詢條件在數(shù)據(jù)庫(kù)中進(jìn)行查詢,然后將查詢結(jié)果顯示在界面上。3. 修改操作要進(jìn)行修改操作,必須先執(zhí)行查詢操作。執(zhí)行修改操作系統(tǒng)將更新數(shù)據(jù)庫(kù)中的相應(yīng)記錄。4. 刪除操作要進(jìn)行刪除操作,必須先執(zhí)行查詢操作。執(zhí)行刪除操作系統(tǒng)將刪除數(shù)據(jù)庫(kù)中的相應(yīng)記錄。4.1 類的設(shè)計(jì)基于代碼重用原則,

44、本系統(tǒng)將常用的數(shù)據(jù)庫(kù)操作定義在數(shù)據(jù)庫(kù)數(shù)據(jù)操作類sqlhelper中,將業(yè)務(wù)邏輯處理定義在services類中,將一些常用的函數(shù)定義在functions類中,這樣可以方便實(shí)現(xiàn)代碼重用。下面分別介紹這幾個(gè)類。4.1.1 數(shù)據(jù)操作類sqlhelper數(shù)據(jù)操作類是在sqlhelper.cs文件中實(shí)現(xiàn)的,位于網(wǎng)站根目錄下的app_code文件夾內(nèi)。在類的最開(kāi)始引入了system.data.sqlclient命名空間,引入此命名空間,是專門用于對(duì)sql server數(shù)據(jù)庫(kù)進(jìn)行操作的。在類的內(nèi)部定義了一個(gè)靜態(tài)變量connectionstring,該變量用來(lái)存放數(shù)據(jù)庫(kù)的連接字符串,它的值是從web.confi

45、g。把數(shù)據(jù)庫(kù)連接字符串放在web.config文件中,可以方便地管理連接字符串,當(dāng)數(shù)據(jù)庫(kù)發(fā)生變化時(shí),只要更改相應(yīng)的配置文件了。在這個(gè)類中我們定義了三個(gè)最常用的靜態(tài)方法:executenonquery,executedataset和executescalar。使用靜態(tài)方法的好處是不用對(duì)類進(jìn)行實(shí)例化就可以調(diào)用這些方法,從而提高代碼的執(zhí)行性能。在這三個(gè)方法的內(nèi)部都創(chuàng)建了sqlconnection實(shí)例,其實(shí)例化操作都是放在using語(yǔ)句中執(zhí)行的,這樣在執(zhí)行完using語(yǔ)句之后,會(huì)對(duì)在using語(yǔ)句中的引用的資源進(jìn)行回收,執(zhí)行完畢后,關(guān)閉連接,有效地控制了內(nèi)存浪費(fèi)。其中,executenonquery方

46、法用于對(duì)數(shù)據(jù)表的更新、刪除和插入操作;executedataset方法將返回一個(gè)數(shù)據(jù)集用于執(zhí)行數(shù)據(jù)庫(kù)的查詢操作;executescalar方法將返回sql查詢語(yǔ)句的首行首列。核心代碼如下:using system.data.sqlclient; /引入此命名空間,對(duì)sql server數(shù)據(jù)庫(kù)進(jìn)行操作static string connectionstring=onfigurationmanager.connectionstringssqlconnstr.tostring();/讀取存放在web.config文件里的數(shù)據(jù)庫(kù)連接字符串public static void executenonque

47、ry(string sql) using (sqlconnection conn = new sqlconnection(connectionstring) sqlcommand cmd = new sqlcommand(sql, conn); conn.open(); cmd.executenonquery(); conn.close(); /封裝command對(duì)象的executenonquery方法,對(duì)數(shù)據(jù)庫(kù)進(jìn)行更新,刪除和插入數(shù)據(jù)4.1.2 邏輯處理類services這個(gè)類文件同樣也位于根目錄下的app_code文件夾內(nèi)。在這個(gè)類的實(shí)現(xiàn)中,在任何時(shí)刻應(yīng)用程序最多只有此類的一個(gè)實(shí)例在運(yùn)行,

48、這樣能夠最大限度地保證系統(tǒng)的執(zhí)行性能。在本系統(tǒng)中,通過(guò)調(diào)用類的一個(gè)靜態(tài)方法getinstance()來(lái)獲取類的實(shí)例,在這個(gè)方法中,先判斷是否已有一個(gè)實(shí)例對(duì)象,如果有則返回這個(gè)實(shí)例,否則,創(chuàng)建一個(gè)新的實(shí)例并返回。在services類中,最主要的代碼就是具體的業(yè)務(wù)邏輯查詢、刪除、更新、添加等有關(guān)操作均在此類中存放。比如登錄功能的代碼:public bool checkadminlogin(string username, string pwd) string sql = select count(*) from admin where uname= + username + and pwd= +

49、pwd + ; object obj = sqlhelper.executescalar(sql); if (convert.toint32(obj) 0) return true; return false;這個(gè)方法根據(jù)傳遞進(jìn)來(lái)的用戶名和密碼參數(shù),生成相應(yīng)的sql查詢語(yǔ)句,然后,調(diào)用sqlhelper類中的executescalar方法,以判斷登錄信息是否正確,如果正確則返回true,否則返回false。4.1.3 常用函數(shù)類functions隨著b/s模式應(yīng)用開(kāi)發(fā)的發(fā)展,使用這種模式編寫應(yīng)用程序的程序員也越來(lái)越多。但相當(dāng)大一部分程序員在編寫代碼的時(shí)候,沒(méi)有對(duì)用戶輸入數(shù)據(jù)的合法性進(jìn)行判斷,使

50、應(yīng)用程序存在安全隱患。本系統(tǒng)將經(jīng)常用到的方法封裝在functions文件里,命名空間定為util, 同樣也位于根目錄下的app_code文件夾內(nèi)。核心代碼如下:public static void alert(string message) httpcontext.current.response.write(alert( + message + ); /這個(gè)方法用于顯示。public static void alertandredirect(string message, string url) httpcontext.current.response.write(alert( + mess

51、age + );location.href= + url + ); /這個(gè)方法在顯示文本的同時(shí)并轉(zhuǎn)向location.href所指向的鏈接。有些不法的用戶可以通過(guò)web頁(yè)面提交一段數(shù)據(jù)庫(kù)sql代碼,來(lái)查看數(shù)據(jù)庫(kù)或者對(duì)數(shù)據(jù)庫(kù)的內(nèi)容作出篡改,本系統(tǒng)functions類中的repstr方法,用于過(guò)濾字符串并可以防止不法用戶對(duì)數(shù)據(jù)庫(kù)做出的不法行為,它根據(jù)接收到的枚舉類型repstrdirec對(duì)字符進(jìn)行過(guò)濾和替換;alert方法用于在頁(yè)面中彈出一個(gè)警示框;alertandredirect方法用于在頁(yè)面彈出一個(gè)警示框并轉(zhuǎn)向指定的頁(yè)面;alertout方法在后臺(tái)的session超時(shí)時(shí)用來(lái)提示并重定向到登陸頁(yè)

52、面;checksession方法用于檢查session是否超時(shí),內(nèi)部調(diào)用了alertout方法。4.2題庫(kù)維護(hù)模塊的實(shí)現(xiàn)當(dāng)教師登錄成功之后,可以對(duì)題目進(jìn)行維護(hù)。教師首先要選擇科目,然后選擇需要維護(hù)的題型,最后選擇具體的題目。當(dāng)修改完要修改的內(nèi)容之后,點(diǎn)擊“更新”,數(shù)據(jù)將保存在數(shù)據(jù)庫(kù)中,這里的題目編號(hào)不能修改。具體的實(shí)現(xiàn)方法如下:首先添加dropdownlist控件,根據(jù)當(dāng)前登錄的教師號(hào)查到該教師所授的科目,將科目名稱綁定在list1空間上,實(shí)現(xiàn)的代碼是int userid=int.parse(session userid.tostring();list1.datasource=services

53、.getinstance().getallsubjectbyid(userid); list1.databind();sql語(yǔ)句是:select distinct subject from subject ,department, sysuser, xuanke where sysuser.id = xuanke.id and xuanke.subid = subject.subid and xuanke.depid=department.depid and xuanke.id= + userid + ;再添加menu控件,collection的值有四個(gè),分別是選擇題,value是0,填空題,value是1,簡(jiǎn)述題,value是2,設(shè)計(jì)題value是3;再添加multiview控件,最后在multiview控件中添加4個(gè)view控件。核心代

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論