網絡考試系統的設計與實現
《網絡考試系統的設計與實現》由會員分享,可在線閱讀,更多相關《網絡考試系統的設計與實現(65頁珍藏版)》請在裝配圖網上搜索。
1、 畢業(yè)設計(論文)論文題目 網絡考試系統的設計與實現Thesis TopicThe design and implementation of the network examination system畢業(yè)設計(論文)任務書第1頁畢業(yè)設計(論文)題目:網絡考試系統的設計與實現畢業(yè)設計(論文)要求及原始數據(資料):1 了解國內外網絡考試系統的發(fā)展現狀,深入分析考試系統的工作流程;2 根據考試系統的工作流程設計系統的總體結構,繪制總體結構圖;3 設計系統的功能模塊,如:后臺系統維護模塊,包括試題的錄入、維護、刪除等功能;前臺考試模塊,包括考題的分發(fā)、考試時間的記錄等功能;教師組題模塊,包括考題的
2、生成、題型的選擇、分值的設定等功能;設計并實現教師考前出題的組題功能模塊,包括考題類型、數量、每個題分數的設定等;4 熟練地運用和掌握JavaWeb技術和MySql數據庫編程;5 進行考試系統的程序代碼編寫、調試運行以及功能測試;6 訓練檢索文獻資料和利用文獻資料的能力;7 訓練撰寫技術文檔與學位論文的能力。 第2頁畢業(yè)設計(論文)主要內容:1綜述網絡考試系統的項目背景及國內外發(fā)展現狀;2分析傳統考試形式的工作流程,設計網絡考試系統;3闡明網絡考試系統的運行環(huán)境及開發(fā)工具; 4給出管理員題庫后臺維護管理模塊、教師組題模塊、前臺考試模塊的設計方法;5. 介紹網絡考試系統的數據結構和實現方法;6闡
3、述網絡考試系統中每個功能模塊的程序編寫、調試、運行及達到的實際效果;7對系統進行全面測試,分析測試結果并詳細說明自己的網絡考試系統中具有亮點的模塊和不足之處。 學生應交出的設計文件(論文):1內容完整、層次清晰、敘述流暢、排版規(guī)范的畢業(yè)設計論文;2包括畢業(yè)設計論文、源程序等內容在內的畢業(yè)設計電子文檔及其它相關材料。 第3頁 主要參考文獻(資料):1 李英杰. 基于JAVA技術的網絡考試管理系統的研究與開發(fā)D. 上海: 同濟大學,2007, (23):頁碼.2 王添財. 基于Java EE的在線考試系統的設計與實現D. 廣東:華南理工大學,2014.3 劉毅. 人工智能在自動組卷建模中應用研究J
4、. 計算機仿真,2011.4 郭琳. Java Web中錯誤異常的處理方法分析J. 電子技術與軟件工程,2015.5 關海偉. Java Web的云存儲技術研究D. 西安:西安電子科技大學,2014,(23):頁碼.6 Renuka Kumar. Detection of Obfuscation in Java MalwareJ. 愛思唯爾期刊,2016. 7 鄭保平,郭榮寧. 數據庫技術研究綜述J. 軍事通信系統,2003,(18): 頁碼.8 Ronald P .Anjard. The Basics of Database Management SystemsJ. Emerald期刊,19
5、94.9 Sepideh Naghdi. Preventing database schema extraction by error message handingJ. 愛思唯爾期刊, 2015. 10 朱少民. 軟件測試方法和技術D. 北京:清華大學出版社,2010.11 柳純錄. 軟件評測師教程J. 北京:清華大學出版社,2005.12 舒華峰. 自動組卷系統的設計與實現D. 吉林:吉林大學,2014,(15):頁碼.網絡考試系統的設計與實現摘 要科技在進步,人們生活和工作的方式正發(fā)生著改變,不僅體現在人們的衣食住行,也體現在與時俱進的考試形式上。以前的考試需要組織者投入大量的時間和精力
6、,需要對考試的試題進行篩選,對后期的考卷進行批閱,這么多的步驟影響了整個考試執(zhí)行的效率。因此,本文提出了一種網絡考試系統,用于解決上述的一些問題。本文描述的網絡考試系統主要是利用瀏覽器作為界面,利用B/S模式,即用戶可利用瀏覽器直接訪問本站點。主要用到的技術是采用JavaWeb技術和MySql數據庫等設計出了各種功能。該系統主要有用戶管理、功能管理、角色權限管理、學生網絡考試、試題管理、錯題管理、自動組卷等功能。本文提供了一些該系統的部分代碼跟截圖幫助介紹該系統,對系統的總體設計、詳細設計以及測試都給出了一些介紹,還對運行截圖以及代碼作出了相應的解釋。該網絡考試系統基本上可以滿足一些簡單的考試
7、,運行良好,基本可以滿足設計要求。關鍵詞: 考試;JavaWeb;網絡The design and implementation of the network examination systemAbstractScience and technology in progress, people living and working the way is changing, not only reflected in peoples basic necessities, but also reflected in the form of examination with the times.
8、The previous exams require the organizers to devote a lot of time and effort to the examination of the examination questions, the late examination of the examination papers, so many steps affect the efficiency of the entire examination. Therefore, this paper presents a network test system, used to s
9、olve some of the above problems.This article describes the network test system is mainly using the browser as an interface, the use of B / S mode, that users can use the browser to directly access the site. The main use of the technology is the use of JavaWeb technology and MySql database design a v
10、ariety of functions. The system mainly has user management, function management, role rights management, student network examination, test questions management, wrong title management, automatic test paper and other functions.This article provides some of the system code and screenshots to help intr
11、oduce the system, the overall design of the system, detailed design and testing are given some introduction, but also on the operation of the screenshot and the code to make a corresponding explanation. The network test system is basically able to meet some simple exams, running well, the basic can
12、meet the design requirements.Keywords:Examination; JavaWeb; Networki目 錄摘 要iAbstractii第1章 緒論11.1 研究的目的及意義11.2 研究開發(fā)現狀分析11.3 研究的內容1第2章 系統相關技術32.1 JAVA簡介32.2 J2EE32.3 MySQL42.4 MyEclipse52.5 JavaScript62.6 JQuery62.7 CSS372.8 JSP72.9 Tomcat服務器8第3章 可行性與需求分析93.1 可行性分析93.2 需求分析9第4章 系統總體設計114.1. 系統概要功能圖114.
13、2 系統基本功能114.2.1 登錄功能114.2.2 系統答題114.2.3 答題得分124.2.4 錯題解析124.2.5 系統功能管理124.2.6 用戶管理124.2.7 角色管理124.2.8 題目管理134.2.9 試卷管理134.3 數據庫設計13第5章 系統詳細設計185.1 學生用戶端185.1.1 學生用戶登錄185.1.2 主界面195.1.3 系統答題205.1.4 答題得分215.1.5 錯題解析245.2 管理員端245.2.1 管理員登錄245.2.2 管理員主界面255.2.3 系統功能管理255.2.4 用戶管理275.2.5 角色管理295.2.6 題目管理
14、305.2.7 試卷管理325.3 數據管理33第6章 系統測試376.1 功能測試376.2 兼容性測試426.3 測試的方法42第7章 結束語43致謝44參考文獻45外文翻譯46iii第1章 緒論1.1 研究的目的及意義在我們以往的考試經歷中,我們可以看到,每次考試都需要經過出試卷、印試卷、發(fā)卷、做卷、收卷、閱卷、統計等過程,這幾個過程有著很強的先后次序,不能順序顛倒。這些過程中,又以出卷、閱卷和統計最為復雜,當一次考試涉及的人數眾多時,老師需要批閱非常多的卷子,重復的批閱卷子浪費了大量的時間,此外,不僅效率底下,同時大量的閱卷工作也讓老師疲于應付,最后導致閱卷的準確率下降。即便閱卷完成之
15、后,工作還沒結束,還需要對這些卷子進行分數登記、成績統計以及對各個題目進行錯誤率統計,這些工作消耗時間非常多,因此效率也是非常低的。此外,從學生角度出發(fā),每次做卷都要準備筆和草稿紙,麻煩且不符合環(huán)保的要求,從老師的角度出發(fā),如果能夠減少出卷、閱卷和統計的時間,那么可以騰出更多的時間用在其他的地方。因此本文基于JavaWeb技術希望開發(fā)一套網絡考試系統來解決出卷、閱卷、統計花費時間過多的問題,同時為學校教務信息化作出一份貢獻。本文開發(fā)的網絡考試系統具有一定的現實意義,主要是解決教師在出卷、閱卷和統計上花費時間過多的問題。開發(fā)一個系統需要考慮很多方面的問題,比如說時效性和高效性這是兩個最最常見的因
16、素,因為時效性關系到你的系統在投入使用時是不是真的能夠解決當前所存在的這些問題,網絡考試系統在國內雖然已經初具規(guī)模,一些學校也在使用這種方式考試,但我覺得目前的考試系統還存在著一些未解決的問題,還需進一步完善。同時高效性也是一個非常重要的因素,如果你的系統用了以后還不如不用那么你的系統必定是一個不成功的產品這也是我們開發(fā)需要考慮的一個重要問題。本系統目前只可以實現對一門科目的客觀題的考試,基本上還不是特別成熟的一個系統,我還需要考慮如何進行多科目的主客觀題型的考試是我以后研究的方向。因此是本系統的開發(fā)具有很重要的實際意義,能在當前的發(fā)展狀態(tài)下為學生和教師提供適當的幫助的同時也為今后此類軟件的發(fā)
17、展提供一定的基礎。1.2 研究開發(fā)現狀分析國內考試系統的信息化發(fā)展比較緩慢,在廣泛化應用的過程中,開發(fā)者一方面不斷投資購建各種硬件、系統軟件和網絡,另一方面也不斷開發(fā)實施了各類教學軟件、數據統計、信息記錄等應用系統,形成了一定規(guī)模的信息化建設體系??墒牵捎谀壳皣鴥鹊南到y還不是很完善,比如一門考試就需要一個系統去支持,這樣成本太高,而且我國集體信息化水平有些落后,資金短缺等因素。我國的網絡考試系統還沒有很好地完全自如的融入到我們的學習生活中,比其他國家有一定的差距。國外的管理與國內完全不同,不但在線考試化建設早,而且他們有堅強的技術團隊來提供技術基礎。1.3 研究的內容本系統的研究目的在于實現
18、網絡考試系統,實現該系統要完成的工作包括如下幾個方面:(1)了解全球的網絡考試系統的發(fā)展歷程和現狀。深入解析其工作流程。(2)根據該系統的工作流程設計其總體結構,繪制其結構圖。(3)設計系統的功能模塊,如:后臺系統運行維護模塊。包括試題的錄入、篩選、刪除,隨機生成,提交,打分等功能。前臺考試模塊,包括題的分發(fā)、時間的記錄等功能。教師組題模塊,具有考題的生成、選擇、分數評判的等能力。設計并實現教師考前出題的組題功能模塊。包括題類型,數量,每個題考分的設定等。(4)熟練地運用和掌握JavaWeb技術和MySql數據庫編程,進行考試系統的程序代碼編寫、調試運行以及功能測試。(5)了解電腦服務器的運行
19、問題以及原理;大數據庫的儲存;以及大數據庫與程序的互相交流問題。第2章 系統相關技術本網絡考試系統運用了很多的開發(fā)工具以及以java為基礎的開發(fā)語言,在后臺的代碼編寫中主要運用了Java、J2EE;前臺的設計中運用了JavaScript、JQuery、css等一些開發(fā)語言;通過eclipse來編寫這些程序;用mysql進行數據庫的設計與分析;另外該網絡考試系統的部署容器為tomcat,當需要進行考試時,只需要配置tomcat服務器,便可進行考試。2.1 JAVA簡介 Java作為一種計算機編程語言,其在企業(yè)網絡和Internet環(huán)境的應用更是十分廣泛,現在已成為Internet中最受歡迎、最有
20、影響的編程語言之一。其最大的特點就是面向對象,這種面向對象的程序設計更接近我們的思維方式,相對于面向過程的程序設計,它最大的優(yōu)點就是可擴展性和可維護性,這也使我們的代碼更健壯。我們都知道面向對象主要有四大特性:封裝、抽象、繼承和多態(tài)。 封裝:在面向對象語言中,封裝特性最為直接的體現在類中,類即現實生活中的實體的抽象,我們將其所擁有的屬性和方法封裝到類中,對外部我們提供相應的接口,通過實例化的對象可以調用類中封裝好的屬性和方法,并且在使用這些方法時并不用知曉其內部的具體實現,這是面向對象的封裝特性; 抽象:抽象就是將一類實體的所共同擁有的特性抽象出來,封裝在一個抽象類中,抽象在面向對象語言中是由
21、抽象類來體現的。抽象類描述的是一類事物共有的東西,而并非特指某種事物,所以在Java編程語言中體現為抽象類不能實例化; 繼承:繼承就是指子類可以繼承父類或者接口,從而可以實現代碼重用,其實繼承體現的是單繼承關系,父類和子類本質上還是一類實體。多態(tài):Java中的多態(tài)具有多重含義。首先多態(tài)最為直白的體現就是父類對象引用不同的子類對象實例,調用不同的子類重寫的方法從而表現出不同的行為。多態(tài)能夠提高代碼重用,還可為程序提供更好的可擴展性。2.2 J2EEJ2EE是一項目架構標準主要用于網頁的開發(fā)通過這個標準可以制定出一些應用于企業(yè)的網站。嚴格地來說,J2EE并不屬于一種產品而是一種約束或者是標準。有的
22、人把它稱開發(fā)的規(guī)范,因此,不管是哪一家公司他們只要在這個架構下進行開發(fā)都可以開發(fā)出一款比較實用的高級應用程序。J2EE從開發(fā)到設計,再到最后的綜合管理可以構成一套完整的開發(fā)體系,J2EE是由oracle軟件公司跟其他多數享譽盛名的科技公司共同努力發(fā)明并且應用起來的。J2EE是軟件開發(fā)的一項標準。J2EE并非是一種生產產品,它既可以說一種開發(fā)標準,也能夠說是一種開發(fā)規(guī)范。無論是哪家公司都能夠在這種現有統一的標準下開發(fā)出一套屬于自己企業(yè)的高級應用系統的。J2EE是一個公司級平臺。它用來給那些在公司經營項目中遇到的研發(fā)、設計、系統管控有關難題進行簡化。J2EE可以說這一項技術是根據JAVA標準升級而
23、成而不是憑空獨創(chuàng)的,J2EE不斷的更新和發(fā)展最終形成了現在的約束和規(guī)范。J2EE技術首先要不違背它所繼承的技術和規(guī)范標準,比如說對數據庫的訪問以及良好的跨平臺性質,以及分布式的應用。同時,還要適用于各種各樣的使用人群。除此之外必須還要為其他的網頁開發(fā)或者企業(yè)開發(fā)提供大量的預留接口,體現其強大的可擴展性。其他的開發(fā)人員可以通過這些預留的接口對該規(guī)范和準則進行更加標準和一致性高的開發(fā),從而體現出J2EE標準的強大的伸縮性。那么最終的一個目的就是要使得程序開發(fā)人員在開發(fā)過程中盡量少使用市場上的一些現有的框架,從而規(guī)范一個正確的開發(fā)體系。那么,他是利用一種開發(fā)模型,此模型呈現分布式。以此來完成對所有應
24、用的開發(fā)。在開發(fā)過程中主要根據系統的各個功能進行劃分,也可將這些功能劃分為不同的組件。不同的組件會存放在不同的服務器上,并通過不同的用戶接口進行管理。那么使用這一標準可以明確的規(guī)范開發(fā)的流程,并且可以通過MVC來解決系統層次和架構的問題,使得開發(fā)人員更加輕松的開發(fā)代碼,并且讓維護人員或者后期的修改人員能更加方便地查看系統的代碼和結構。2.3 MySQLMySQL是一款開源的數據庫。它具有非常實用的價值。他屬于中型數據庫。MySQL提供了許多的技術支持其中包括了多操作系統的支持也包括了多線程的支持,同時也提供多種資源的支持,除此之外,還可以提供多種的數據庫連接方法解決數據庫并發(fā)和大量數據操作的問
25、題 。使用MySQL的人都會認為這個數據庫特別實用。由于它是完全開源和免費的,在使用成本上也不會有太大的損失,因此是目前中小型公司主要使用的數據庫之一。從數據庫關系來看他是一款關系型數據庫具有很多優(yōu)點比如說用的內存空間較小用戶界面簡單操作起來十分便捷并且不需要太多繁瑣的安裝步驟。MySQL是由MySQL公司開發(fā)而成,那么這個公司是一個什么公司呢?從歷史數據來看它是一個非常有商業(yè)眼光的公司,也是非常成功的一個公司,它所開發(fā)的產品都受到了人們的青睞。MySQL本身的特性也非常的突出,他能夠兼容多種操作系統,同時也能兼容多種的編程語言,比如說Linux環(huán)境下使用,也同時能夠支持多種編程語言并為這些編
26、程語言提供他們所要使用的用戶接口。在性能方面具有處理大數據高并發(fā)的處理能力,并且不會占用太多的主機內存,這一點相對其他的數據庫要好很多。MySQL的架構應用圖如2-1所示:圖2-1 Mysql架構服務圖MySQL使用了好幾種軟件進行測試,保證這個可用性;它支持好多種操作系統;支持多線程,提供了很多資源;也提種了很多數據庫連接方法;它還可以處理很多比較大的數據庫。大部分使用這個軟件的人就會有很大的幫助了,而且還因為其他開放源碼軟件,也還大大降低總體擁有成本了。MySQL數據庫是最流行的關系型數據庫管理系統,在WEB應用方面MySQL數據庫是最好的RDBMS(Relational Database
27、 Management System:關系型數據庫管理系統)應用軟件之一。關系型數據庫有較強的靈活性,它將數據保存到不同的表中,這樣將數據進一步細分,讀取速度和靈活性就會提高。MySQL數據庫是真正做到了多線程、多用戶的SQL數據庫9。它使用最常用標準化語言去訪問數據庫。MySQL數據庫以其成本低、體積小、速度快和源碼開發(fā)的優(yōu)點,開發(fā)中小型的網站都選用MySQL數據庫作為數據庫。在大學期間,MySQL做為我們最先接觸和理解的數據庫其基礎應用相對廣泛,此次畢業(yè)設計我也選用MySQL做為后臺數據庫。MySQL數據庫的實現是以一個客戶機/服務器結構13的形式,它是很多不同的客戶程序和庫和一個服務器守
28、護程序組合而成的。MySQL數據庫主要是快度速、比較健壯和易于使用。我們需要這樣一個SQL服務器,它能基于不昂貴的基礎上,處理數據速度快,加之可視化插件、軟件的使用可以使其數據操作更加方便??梢钥偨Y出MySQL具有以下幾個特性:a. 支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統;b. 為多種編程語言提供了API;c. 支持多線程,充分利用CPU資源;d. 通過優(yōu)化的SQL語句算法,有效地增進了查詢速度;e. 能夠作為單獨的應用程序為客戶端服務器網絡環(huán)境提供數據支持,
29、也能夠作為庫而嵌入到其他的軟件,完成相關的數據存儲作用;f. 提供多種語言支持,數據表名和數據列名都可以使用多種編碼方式如中文的GB 2312、BIG5,日文的Shift_JIS等;g. 提供多種用于管理數據庫操作的管理工具;使用MySql數據庫用作集群服務器管理系統的數據庫??梢宰尫掌鞔罅康南嚓P數據得以快捷地查詢處理。2.4 MyEclipseMyEclipse是一種有集成效果的開發(fā)工具。在Eclipse的基礎上進行插件的集成,最終形成功能強大的開發(fā)軟件。目前主要用于JAVA,JAVAEE的開發(fā),也可以用于移動應用的開發(fā),其主要特點是功能強大,應用廣泛,并且支持很多開源的產品,應用前景非常
30、廣發(fā)。MyEclipse是由Eclipse通過對插件的集成而來,是對IDE的拓展,可以用來開發(fā)網頁等應用,可以實現程序的開發(fā),調試,發(fā)布等,能極大的提高開發(fā)效率,能完美支持HTML、STRUTS等,可以說集成后的MyEclipse包含了當前所有主流的開源產品。MyEclpise也經歷了很多代的產品,從最開始的到后來的2014版本,2015版本等都說明了它在發(fā)展歷程中的變化。MyEclipse的配置使用也非常智能,不需要使用者懂太多的知識,只需要在自己使用的功能中進行了解即可,在完成項目開發(fā)之后,也可以直接通過MyEclipse進行項目部署,可以將網頁項目進行選中,直接運行在Tomcat中,也可
31、以將項目打包通過導出功能將項目全部導出,然后將項目發(fā)布到tomcat中,通過對配置文件的設置,完成布置,布置完項目以后可以在瀏覽器中進行查看??梢哉f,有了MyEclipse之后,基本就能支持所有的web開發(fā),就能使用快捷的編譯工具進行快速的開發(fā),也能在各種各樣的服務器上進行代碼測試。在其他方面,MyEclispe也有很多的開發(fā)前景,比如在云開發(fā)領域,在移動端開發(fā)領域,在企業(yè)級開發(fā)領域等等,因此,MyEclipse的應用場景非常的廣泛。2.5 JavaScriptJavaScript看樣子和Java很像,但是,實際上它們之間并沒有直接聯系,只是大家都以Java開頭而已。目前互聯網上最重要的語言是
32、什么?不是Java,不是.Net,也不是PHP,而是JavaScript,它是互聯網上最重要的語言。它不僅能跨平臺、跨瀏覽器,它還能跨后端語言。在WEB2.0時代,JavaScript語言像橋一樣,將前端頁面和后端服務器連接了起來,這樣前端頁面不用知道服務器那里是用什么語言編寫的,也不用知道是如何編寫的,而服務器那頭也不用知道前端是用什么語言寫的,只需要知道前端會傳過來一些固定格式的數據信息。JavaScript編寫的程序是在瀏覽器中運行的,它不會在服務器那頭運行,一定程度上減少了服務器那頭的壓力。JavaScript語言在網頁完全加載完畢后,可以與網頁產生互動來完成一些操作,利用這個特性,我
33、們經常將JavaScript運用在驗證表單、修改HTML元素和存儲用戶數據等方面上。這些功能,Flash和Silverlight都能完成,但是Flash和Silverlight都要單獨的安裝插件,使用門檻比較高,而且針對不同的瀏覽器,插件也不一樣,在一堆插件中,用戶很難選擇正確的插件進行安裝。而JavaScript不同,它不需要額外的安裝什么東西,只要是個瀏覽器,就能支持。JavaScript的語法與C的語法類似,語句通過在最后加上“;”符號來表示結束,同樣的大小寫敏感,注釋也是“/”開始。因此學習過C語言的人能夠很快的上手JavaScript的開發(fā)工作。2.6 JQuery如果把開發(fā)人員扔回
34、石器時代,那么JavaScript就是一堆繩子、木頭和石頭,通過用這些工具,人類就可以在石器時代活下來,同樣的,開發(fā)人員也能用JavaScript做任何事。但是,如果說我們把繩子、木頭和石頭組裝起來,做成榔頭,做成弓箭,那么無論是打獵還是耕作,效率都會有很大的提升。jQuery就是這里的榔頭和弓箭。jQuery是由JavaScript寫的,它封裝了一些我們在創(chuàng)作網頁時候常用的操作,比如對DOM的修改、AJAX等操作,這些操作如果讓開發(fā)人員自己用JavaScript編寫,那么可能要花幾十行代碼,復雜的甚至要上百行,同時考慮到這些操作比較頻繁,那么一個頁面上你會看到很多很多的JavaScript代
35、碼,開發(fā)成本和維護成本都會很高,代碼也不容易讀。在jQuery,這些操作只需要少數幾行代碼甚至一行代碼就能完成,減少了開發(fā)人員的負擔,也讓后期維護更加簡單。繩子、木頭和石頭可以組裝成榔頭、弓箭等,同樣的,JavaScript也能組裝成許多和jQuery類似的工具,但是我們?yōu)槭裁催x擇jQuery,而不選擇其他的呢?一方面是因為jQuery功能強大且容易學習,另一方面,jQuery從發(fā)行到現在,經歷了許多版本的迭代,不僅穩(wěn)定,而且網上相關的資料也更齊全,遇到問題也能更容易的解決。此外,在jQuery的支持下,還誕生一大批基于jQuery的插件,比如UI插件、彈窗、選項卡、導航菜單、在線客服、瀑布流
36、、3D、時間軸等等的插件,這些插件不僅簡化了開發(fā),還使網頁更加美觀,用戶交互體驗更加好?;谏鲜鲈?,才在眾多工具中,采用了jQuery。2.7 CSS3Cascading Style Sheets(CSS),中文叫層疊樣式表?,F在來說我們已經進入了WEB2.0的時代,WEB2.0下的網站不僅需要好看的外觀,同時還要用戶體驗良好的界面。CSS2標準,從現在的大環(huán)境下去看,顯然已經不能滿足日益增長的用戶需求和開發(fā)需求。因此CSS3標準應運而生。CSS的作用是控制頁面的布局,除了控制布局外,它還能夠對頁面上的字體顏色、大小、字體、背景和你能在網頁上看到的一切進行控制。日前很多瀏覽器都能很好的支持C
37、SS3標準。CSS3引入許多新特性,以字體為例,在以前的CSS版本中,如果我們將網頁的字體設置成“宋體”,那么大多數的電腦都能正常顯示,可是我們都知道,MacOS系統里的字體要比Windows下的字體好看,但是如果我們將網頁的字體設置為MacOS系統里的字體,那么Windows系統用戶就沒辦法正常訪問。這在老版本的CSS中是沒辦法解決的,但是在CSS3中,通過Font-face特性,可以允許瀏覽器從服務器上加載字體文件,換句話說,即便你的電腦上沒有這種字體,你也能正常的訪問用了這個字體的頁面??梢奀SS3賦予了更大的靈活性。除了Font-face特性外,CSS3還引入了包括Word-wrap
38、& Text-overflow樣式、文字渲染、多列布局、漸變、陰影、反射、盒子模型、Transforms 和 Animation Transitions等等新特性,這些新特點的引進,降低了創(chuàng)造者的開發(fā)難度,也提高了體驗。2.8 JSPJSP(Java Script Pages)是由Sun公司建立的一種動態(tài)網頁技術,它是建立在HTML文件基礎上的。在傳統的網頁HTML文件(*.htm,*.html)中加入Java程序。首先JSP是跨平臺的,因為Java就是可移植跨平臺的,而JSP技術是建立在Java平臺之上,所以使用JSP開發(fā)的Web應用也是跨平臺的。JSP頁面不僅可以使用普通網頁一樣使用標準標
39、記語言的元素(如HTML標記)以外,還可以使用其獨有的JSP標記。JSP可以直接向數據庫中獲取或寫入數據,所以通過JSP,我們可以在網頁中加入更多動態(tài)內容。JSP有如下優(yōu)點:(1)一次編寫,到處運行。除了系統之外,代碼不用做任何更改。(2)JSP具有多平臺支持??梢栽谌我馄脚_上的任意環(huán)境中開發(fā),在任意環(huán)境中進行系統的部署和擴展。相比JSP的多平臺支持相比ASP/.net的局限性是顯而易見的。(3)具有可伸縮性。不論是只有一個小的Jar文件就可以運行的Servlet/JSP,還是由多臺服務器進行集群和負載均衡,亦或者由多臺Application來事務處理,Java顯示了其廣闊的應用范圍和巨大的生
40、命力。(4)功能強大的多樣化的開發(fā)工具支持。Java已經有了許多非常優(yōu)秀的開發(fā)工具,其中大部分可以免費得到,并且其中大多都能運行在多平臺下。選取JSP的原因JSP通過其獨有的標簽庫,使靜態(tài)HTML網頁技術向動態(tài)網頁技術完善。通過其在網絡編程中的使用,可以利用嵌入Java代碼使其充分利用Java語言的上手容易,跨平臺,運行效率高等優(yōu)點。具備一定程序設計的基本知識,學習JSP也十分容易。首先JSP是一種動態(tài)網頁編程語言,再加上JSP具有跨平臺、運行效率高、易學易用等特點和優(yōu)勢,做簡單界面比較容易,故選用JSP來實現網絡考試系統。2.9 Tomcat服務器Tomcat 服務器是Apache組織的一個
41、開源子項目。具備基本的web服務的功能,是中小型系統首選的服務器,更是開發(fā)和調試JSP 程序的首選。因為Tomcat 技術不僅免費而且性能穩(wěn)定,我們在本科階段的很多web項目中也多為使用Tomcat作為服務器,其也成為目前比較流行使用的Web 應用服務器。如果配置正確,Tomcat 服務器實際上在運行JSP 頁面和Servlet容器。此外,Tomcat和其他Web服務器一樣,都具有基于處理HTML頁面的功能,另外它還是一個Servlet和JSP容器。獨立的Servlet容器是Tomcat服務器的默認模式。目前Tomcat服務器最新版本為8.0.0,本次畢設我使用的也是Tomcat8。此外,To
42、mcat 服務器運行時占用的系統資源較小,可擴展性良好,支持郵件服務和負載平衡等開發(fā)應用系統常用的功能。因此利用Tomcat服務器作為網絡考試系統的Web應用服務器。第3章 可行性與需求分析3.1 可行性分析可行性分析是用最小的代價在最短的時間內確定問題是否能夠解決。我首先需要進一步對上一章節(jié)目前考試系統現狀的分析。之后初步的確定項目的規(guī)模跟目標,確定項目的約束跟限制,必須分析幾種可能解法的利弊,從而判定原定系統的目標和規(guī)模是否能夠實現,系統完成后帶來的效益是否能夠達到最大值。總之,只有認真的進行了可行性分析,才會避免或者減輕項目開發(fā)后期可能出現的困境。1. 經濟可行性經濟可行性的重要方面是研
43、究成本,其中包含畢業(yè)設計所需的開發(fā)成本,對開發(fā)成本是不是會大于開發(fā)項目前期預計利潤進行預算。在結合上述所有情況的分析下,我覺得自己的畢設課題是經濟可行性好的。首先開發(fā)此次畢設軟件不要前期的投入資金,其次是自己設計的,最多是自己去圖書館找書,在實驗室做項目,通過老師教導,同學幫助,這些都是免費的,再有就是需要一臺電腦,這些都是能接受的,成本很小的同時我也可能夠提升我在編碼方面的實現能力。2. 技術可行性本課題使用的是Java技術,開發(fā)平臺選用Eclipse,Eclipse有著完整配備的功能,便于初學者使用還有代碼提示,讓我使用更加得心應手。在決定了編程框架后,再說用Java語言編碼的優(yōu)點:快,精
44、簡,可用性高等。同時,使用的數據庫是MySQL,開源的MySQL增添了可視化和穩(wěn)定化的優(yōu)點,而且安全方面也做得很好,更別說它的強大的保存數據功能以及查詢數據功能。3. 操作可行性該網絡考試系統部署容器為tomcat,當需要進行考試時,只需要配置tomcat服務器,便可進行考試。本系統采用jsp技術,利用網絡就能夠進行訪問和操作,且界面簡單易操作,用戶只要有電腦,都能進行訪問和操作。本系統具有易操作、易管理、交互性好的特點,在操作上是非常簡單的。因此本系統可以進行開發(fā)。3.2 需求分析一.功能需求分析網絡考試系統主要用于實現高校在線考試,基本功能包括:自動組卷、試卷發(fā)布、試卷批閱、試卷成績統計等
45、。本系統結構如下:(1)學生端:登錄模塊:登錄功能;網絡考試模塊:可參加考試,并查看考試結果,提交試卷后老師允許的情況下查看錯題;(2)超級管理員端:登錄模塊:實現管理員登錄功能;用戶管理模塊:實現用戶信息的增加、修改、查看功能;角色權限管理模塊:實現角色的增加、修改、查看功能;試卷管理模塊:實現試卷信息的增加、修改、查看功能;試題管理模塊:實現試題信息的增加、修改、查看功能;(3) 試題管理員端(老師):試卷管理模塊:實現試卷信息的增加、修改、查看功能;試題管理模塊:實現試題信息的增加、修改、查看功能;二.非功能需求分析1、整個系統的設計中,系統必須滿足以下要求:(1)數據安全性存儲有關隱私
46、權的網絡考試等問題的系統數據,需要確保數據的安全性,在網站設計時必須要采取安全防范措施,以解決潛在的安全問題,比如如何防止學生上網查答案。(2)易用性在用戶權限范圍內,可在一個統一風格的界面內即可完成相關的所有業(yè)務流程操作或者獲取所有相關信息,大大提高操作員的工作效率和易用性,靈活應用本系統。(3)柔軟性由于這個網絡考試系統涉及到范圍廣泛的業(yè)務,設計出的系統必須能夠處理接受變化的能力。(4)擴展性隨著互聯網管理業(yè)務管理需求的不斷變化,老師管理系統必然涉及到業(yè)務更新及擴展,這就要求在設計之初就應該考慮良好的可擴展性方案。第4章 系統總體設計4.1. 系統概要功能圖本系統所開發(fā)的網絡考試系統主要分
47、成了三個模塊的主要功能,系統功能、考試功能和學生功能,每個功能都包含了幾個子功能,子功能主要包括:對于系統功能方面的管理、角色的管理、用戶方面的管理、對于試題管理、對于的試卷管理、學生答題、總結出錯題庫與得分。系統的概要功能圖如圖4-1所示:圖4-1 系統概要功能圖4.2 系統基本功能系統功能的劃分方式可以分成很多種類,前面是按照功能模塊進行劃分,將系統分成三個模塊,本章節(jié)依據網絡考試系統的系統角色不同,可以分成用戶端和管理員端。用戶端包括:登錄功能、學生答題、答題得分以及考完試之后的錯題解析。管理員端包括:登錄功能、系統功能管理、用戶管理、角色管理、題目管理、試卷管理。下面本節(jié)主要對各個基本
48、的功能進行一個簡介。(此處沒有對試題管理員進行詳細介紹,因為管理員的題目管理跟試卷管理的功能就是他的功能)4.2.1 登錄功能登錄功能是一個系統的重要組成部分,也是一個系統重要的門戶功能,登錄功能主要實現了使用者對系統的登錄,在本文所設計的體系中,登錄主要分成了兩種身份:學生用戶和管理員。兩種身份登陸,能細分系統的功能模塊,實現更加方便的操作和管理。4.2.2 系統答題系統答題模塊是本系統的一個重要功能,可以實現讓用戶的答題操作。系統答題功能主要是學生用戶登錄以后操作的,學生用戶在輸入正確的用戶名和密碼以后能開始系統答題,系統答題的題目均來自數據庫。4.2.3 答題得分答題得分功能實現了學生用
49、戶在答題結束以后對自己得分情況的查看,該功能就實現了登錄系統的學生用戶在完成自己的試卷以后,點擊體提交就能看到自己的得分,因此該功能是一個展示性質的功輔助能。4.2.4 錯題解析錯題解析功能是系統答題功能的一個輔助或者說優(yōu)化的功能,只有學生用戶在登錄系統完成答題以后在老師允許的情況下才能進行該功能的操作,學生答題可能存在一定的錯誤,對錯誤題目的查看成為考試系統的子功能。因此本文所設計的錯題解析功能,能讓學生迅速發(fā)現正確或者錯誤題目,以及解析過程。這樣方便自學和改進。學生功能結構圖,如圖4-2所示:圖4-2學生系統結構圖4.2.5 系統功能管理系統功能管理主要實現了對系統的其他功能進行管理,主要
50、包括對新功能的添加和編輯,對現有功能的添加和修改,同時能對現有的功能進行子功能的編輯和修改,修改后的功能可以在系統中被查看。4.2.6 用戶管理用戶管理是一個系統的重要功能之一,對用戶的管理可以實現對系統使用者的了解和查看,能讓使用者更加方便的使用本系統,用戶的種類分為多種,本文主要體現在學生用戶和管理者兩種用戶上面,可以對用戶的信息進行添加修改等。4.2.7 角色管理角色管理主要是針對用戶來設計的,不同的用戶擁有不同的權力。換句話說就是操作的權限是不同的。學生賬號只能進行答題等行為,而不能進行后臺的管理員操作。管理員賬號也擁有不一樣的權利。這些權力體現在對賬號的操作,試卷和題目的管理上,因此
51、對權限的管理能很好的控制系統用戶的行為,有利于系統更加穩(wěn)定的運行。4.2.8 題目管理題目管理主要是針對管理員的功能,該功能面向系統中試卷所使用的題目庫,在本系統中,管理員能通過對題目的添加和修改對題目進行管理,可以查看現有的題目,同時也能對新的題目進行添加,為試卷的生成提供更多題目的選擇。4.2.9 試卷管理試卷管理是本系統的核心功能,主要實現的是對學生用戶考試答題的試卷進行管理,通過系統隨機抽取的題目自動生成試卷并且能將試卷存入數據庫,供學生考試時進行選擇。管理員功能結構圖,如圖4-3所示:圖4-3 管理員功能結構圖4.3 數據庫設計 數據庫的設計十分重要,下面將對本文所使用的數據表進行逐
52、一的介紹。1. 用戶表及ER圖表4.1用戶表字段名數據類型 長 度 字段含義 是否主鍵 是否外鍵useridINTEGER11用戶ID是roleidINTEGER11角色id是usernameVARCHAR20 用戶賬戶名userpwdVARCHAR20 用戶密碼usertruenameVARCHAR30 真實姓名 用戶表ER圖,如圖4-4所示:圖4-4 用戶表ER圖用戶id:每一個登陸的用戶都有一個特有的編號;角色id:學生、超級管理員、試題管理員,三個角色分別對應一個編號;賬號:登錄時需要用到的;密碼:密碼對應相應的賬號;姓名:用戶的真實姓名;狀態(tài):1為正常,0為禁用。2. 角色表表4.2
53、角色表字段名數據類型長度 字段含義 是否主鍵 是否外鍵roleidINTEGER11角色id是 rolenameVARCHAR20角色名 rolestateINTEGER11 角色狀態(tài)角色id:學生、超級管理員、試題管理員,三個角色分別對應一個編號;角色名:學生、超級管理員、試題管理員;角色狀態(tài):1為正常,0為禁用。3. 功能表ER圖表4.3功能表字段名數據類型長度 字段含義 是否主鍵 是否外鍵funidINTEGER11功能ID是funnameVARCHAR20功能名funurlVARCHAR200 功能地址funpidINTEGER11 頂層功能IDfunstateINTEGER11 功能
54、狀態(tài)功能表ER圖,如圖4-5所示:圖4-5 功能表ER圖功能id:每個功能對應的編號;功能名:分別有系統功能管理、角色管理、用戶管理、題目管理、試卷管理等;功能地址:每個功能對應一個地址,用于管理;頂層功能id:系統功能包括系統功能管理、角色管理、用戶管理,試題管理包括題目管理、試卷管理;狀態(tài):1為正常,0為禁用。4. 權限表ER圖表4.4權限表字段名 數據類型長度 字段含義 是否主鍵 是否外鍵rridINTEGER11 角色權限ID是funidINTEGER11功能ID 是權限表ER圖,如圖4-6所示:圖4-6 權限表ER圖角色權限id:每個角色所擁有的權限對應的編號;功能id:每個功能對應
55、的編號;5. 試題表ER圖表4.5試題表字段名數據類型長度 字段含義 是否主鍵 是否外鍵sidINTEGER11試題ID是 scontentVARCHAR150題干 saVARCHAR100A選項sbVARCHAR100B選項scVARCHAR100C選項sdVARCHAR100D選項試題表ER圖,如圖4-7所示:圖4-7 試題表ER圖試題id:每道題對應的編號;題干:題目的內容;6. 試卷表ER圖表4.6試卷表字段名數據類型長度 字段含義 是否主鍵 是否外鍵pidINTEGER11試卷ID是pnameVARCHAR11試卷名sidINTEGER11試題ID是試卷表ER圖,如圖4-8所示:圖4
56、-8 試卷表ER圖試卷ID:每套試卷對應的編號;試卷名:試卷對應的名字;試題id:每道題對應的編號;7. 學生試卷表ER圖表4.7學生試卷表字段名數據類型長度字段含義是否主鍵 是否外鍵spidINTEGER11試卷ID是useridINTEGER11用戶ID是sidINTEGER11角色ID是 studentkeyVARCHAR10學生答案studentstateINTEGER11試題答案學生試卷表ER圖,如圖4-9所示:圖4-9 學生試卷表ER圖試卷ID:每套試卷對應的編號;用戶id:每一個登陸的用戶都有一個特有的編號;角色id:學生、超級管理員、試題管理員,三個角色分別對應一個編號;學生答
57、案:學生做試卷后的結果;試題答案:每道題的正確答案;第5章 系統詳細設計本章主要介紹網絡考試系統的詳細設計,分別從用戶端和管理員端介紹各個功能模塊的實現情況和運行截圖。下面首先介紹用戶端,然后介紹管理員端。5.1 學生用戶端在這個系統中使用者主要是分為管理員和學生,我在這里先介紹學生用戶系統的運行情況。以下是學生用戶從登陸到錯題解析的整個運行流程情況將在下面的論文中進行展示。5.1.1 學生用戶登錄學生用戶登陸,先到這個界面。 如圖5-1所示:圖5-1用戶登錄運行界面在進入登錄界面以后選擇學生登錄,再輸入正確的用戶名和正確的密碼,就可以登錄。如圖5-2所示:圖5-2用戶登錄輸入界面用戶正確完成
58、登錄輸入以后,系統會根據用戶所輸入的信息,通過功能代碼實現與數據庫中存儲數據的對比,從而判別該登錄用戶是否合法,如果不合法將提示輸入正確的登錄信息,輸入正確則登錄系統,進入系統的主界面。5.1.2 主界面學生用戶正確登錄系統之后會跳轉到學生用戶端的界面,主界面如圖5-3所示:圖5-3學生用戶主界面學生用戶的主界面主要包含了試卷列表和查看錯題兩個功能,試卷列表中羅列了所有考試的試卷,學生可以根據老師的要求選擇對應的的試卷進行考試,考試結束以后還可以進行錯題查看功能。5.1.3 系統答題學生用戶登錄系統以后選擇試卷列表中的試卷進行考試答題,答題界面如圖5-4所示:圖5-4學生用戶答題界面學生要在一
59、定的時間內,完成試卷上的所有題目,然后進行提交,答題的進度和時間的限制可以系統會給出提示,運行界面如圖5-5所示:圖5-5學生用戶答題進度界面5.1.4 答題得分學生在規(guī)定的時間內完成答題,完成以后提交系統,提交系統,系統會根據題庫對比得到考試成績,成績界面如圖5-6所示:圖5-6學生用戶答題成績界面計時器(到時自動交卷)功能,交卷時判斷試卷是否有未答題、計算得分等功能都在paper.jsp中用javascript來實現/ 交卷功能判斷是否有未答題目function unAnswer()if(unanswer != 0)layer.open(title:警告, content: 還有+unan
60、swer+道題目未做!,icon:2,end:function()postAnswer(););elsepostAnswer();計算得分function getScore()/var spid = n$.post( url: basePath + user/studentPaper?cmd=score&userid=+$userid+&spid=+ now.getTime(), contentType: false, processData: false, success: function(res) console.log(res) layer.open(title:得分, content: res,icon:1,end:function()location.href = basePath+user/stud
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教部編版教材三年級上冊道德與法治第四單元家是最溫暖的地方教學ppt課件 (全套)
- 蘇教版小學科學三年級下冊《雨下得有多大》課件1
- 花的形態(tài)與結構課件匯總
- 一年級-數學下冊十幾減九人教版課件
- 電影膠片動態(tài)課件
- 高電壓技術課件第六章
- 項目采購管理(6)
- 四川省攀枝花市XX小學一年級數學下冊六100以內的加法和減法二練習十三2課件蘇教版
- 山東省青島市黃島區(qū)海青鎮(zhèn)中心中學七年級歷史下冊 15 明朝君權的加強課件 新人教版
- 把握人物的性格特征
- 剪小紙人PPT課件
- 八年級物理探究凸透鏡成像規(guī)律8
- 1[1]22配方法2
- 近代機械行業(yè)唯物主義管理分析自然觀
- 全國科技創(chuàng)新大賽“科學幻想畫”獲獎作品ppt課件