基于SSM的學(xué)生綜合測評系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
基于SSM的學(xué)生綜合測評系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
基于SSM的學(xué)生綜合測評系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
基于SSM的學(xué)生綜合測評系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
基于SSM的學(xué)生綜合測評系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

-1-第1章緒論1.1研究目的和意義在科學(xué)技術(shù)的進(jìn)步推動之下,生活中每個方面都會用到計算機(jī)技術(shù),并在此過程中產(chǎn)生了快速的發(fā)展。隨著信息化和教育的不斷進(jìn)步,人們越來越重視學(xué)習(xí)了,學(xué)習(xí)成績的測評就是一個關(guān)鍵環(huán)節(jié),對學(xué)生進(jìn)行測評,有十分重要的意義對于提高成績來說。從學(xué)生綜合測評的角度來說,由于涉及到的學(xué)科和項目過多,需進(jìn)行操作的數(shù)據(jù)也很多,使得學(xué)校很難對其進(jìn)行全面的統(tǒng)計。所以,利用計算機(jī)把學(xué)生的綜合測評成績統(tǒng)計起來,放到統(tǒng)一的數(shù)據(jù)庫當(dāng)中保存,再通過計算機(jī)技術(shù)對已收集的綜合測評成績進(jìn)行分類,這樣可以讓學(xué)校的管理變得十分方便,還能節(jié)省大量的費用。通過Java語言編寫,基于SSM框架,運用MySQL數(shù)據(jù)庫,這是本系統(tǒng)的開發(fā)工具。系統(tǒng)擁有的模塊很多,像學(xué)生管理、教師管理、班級管理、項目管理、科目管理和綜合測評管理。系統(tǒng)開發(fā)的背景以及意義是本文的開篇之語,隨后是講解了國內(nèi)外的相關(guān)研究現(xiàn)狀,然后是系統(tǒng)分析,最后,用圖像對各模塊進(jìn)行了說明。系統(tǒng)的設(shè)計意義在于,一方面,對學(xué)校來說,學(xué)校教育教學(xué)管理中的重要研究內(nèi)容就是對學(xué)生的成績進(jìn)行分析,通過分析學(xué)生綜合成績可以進(jìn)一步了解到學(xué)生對知識點的理解和掌握情況以及教師的教學(xué)狀況,從而進(jìn)行改進(jìn)相關(guān)的教學(xué)狀況來更好的幫助學(xué)生去學(xué)習(xí),對教師的教學(xué)環(huán)節(jié)也提出修改意見,促進(jìn)教師改善教學(xué)方法和教學(xué)質(zhì)量[4],因此對學(xué)生進(jìn)行綜合測評具有現(xiàn)實意義;從個人能力方面來說,完成了學(xué)生綜合測評系統(tǒng),將在學(xué)校學(xué)到的知識以設(shè)計系統(tǒng)的方式展示出來,提高了使用Java語言進(jìn)行編程和創(chuàng)新的行動力,對MySQL數(shù)據(jù)有了更深的認(rèn)知,在對解決系統(tǒng)出現(xiàn)的各種bug面前,也不再像以前一樣害怕了,對我是一次極大的磨練。1.2國內(nèi)外研究現(xiàn)狀在我國國內(nèi),許多高校都已經(jīng)建立起自己的學(xué)生全面評價體系;以吉林大學(xué)丁漢強(qiáng)為例,在這所學(xué)校,學(xué)生的綜合分?jǐn)?shù)依舊是人工的,而且這所學(xué)校的學(xué)生和老師都比較多,所以丁漢強(qiáng)為他們設(shè)計的這套學(xué)生綜合分?jǐn)?shù)管理系統(tǒng),就可以對學(xué)生、老師和班級進(jìn)行管理,除此之外,老師還可以在這套系統(tǒng)上進(jìn)行留言,學(xué)生們也可以在上面看到留言,這樣增加了學(xué)生和老師之間的溝通。西華大學(xué)實施學(xué)生綜合測評系統(tǒng),目的在于強(qiáng)化學(xué)生的學(xué)業(yè)水平,提高學(xué)生的綜合素質(zhì);張平在學(xué)校里開發(fā)了一個可以提供學(xué)生管理、教師管理和分?jǐn)?shù)管理等的學(xué)生綜合測評系統(tǒng)。建立一個全面的學(xué)生綜合測評系統(tǒng),既可以減少教師的工作量,還可以提高學(xué)生整體表現(xiàn)。在國內(nèi),我們學(xué)校對學(xué)生綜合測評的探究并不完美,存在著一些小問題,例如:測評的方式不夠健全,導(dǎo)致學(xué)生對它不夠重視,有時還不夠公平、公正。所以,建立一個全面的學(xué)生綜合測評系統(tǒng),便于學(xué)校對學(xué)生進(jìn)行有效的管理。1.3論文具體安排本論文會用6個章節(jié)以及結(jié)論來講解本系統(tǒng)的開發(fā)和設(shè)計過程,并且講解從系統(tǒng)開發(fā)的工具及相關(guān)理論到系統(tǒng)分析再到系統(tǒng)實現(xiàn),介紹構(gòu)建的環(huán)境,編寫的代碼等,用本論文讓讀者們可以認(rèn)識到本系統(tǒng)。第1章:在緒論部分,明確了背景和意義,并且對國內(nèi)外的有關(guān)研究現(xiàn)狀進(jìn)行了了解,闡明了本論文的結(jié)構(gòu)。第2章:在相關(guān)理論與技術(shù)部分,是對技術(shù)原理的介紹。第3章:在系統(tǒng)分析部分,對系統(tǒng)有關(guān)的可行性以及需求進(jìn)行了分析。第4章:在系統(tǒng)設(shè)計部分,主要是對各功能模塊以及數(shù)據(jù)庫進(jìn)行了設(shè)計。第5章:在系統(tǒng)實現(xiàn)部分,展示各用戶界面的不同功能。第6章:在系統(tǒng)測試部分,說明了測試目標(biāo),步驟,用例以及結(jié)論。在結(jié)論部分,對系統(tǒng)的設(shè)計思路和存在的問題進(jìn)行了闡述。第2章相關(guān)理論和技術(shù)2.1JSP技術(shù)介紹JSP會受到來自客戶機(jī)發(fā)送的請求,當(dāng)該請求被接收后,將被處理,并將該請求的處理結(jié)果反饋給客戶機(jī),JSP就是這樣工作的。JSP將首個請求轉(zhuǎn)化為經(jīng)過JSP引擎的servlet文件,以下是過程介紹:(1)Java源碼是JSP文件通過JSP引擎進(jìn)行轉(zhuǎn)換的,如果此時出現(xiàn)語法錯誤在JSP文件中,就會把這個錯誤的信息發(fā)給服務(wù)器和客戶機(jī)并且停止轉(zhuǎn)換。如果成功轉(zhuǎn)換,Java源碼就會用JSP引擎通過javac進(jìn)行編譯,從而得到編譯后的class文件。(2)建立正在執(zhí)行的servlet實例使用jspInit()方法,jspInit()方法會且只會被使用一次在servlet存在的時間內(nèi)。(3)處理客戶機(jī)的請求通過jspService()方式來進(jìn)行,每一個請求會被創(chuàng)建一個新的線程來進(jìn)行處理,這個是JSP引擎的能力。當(dāng)很多的客戶機(jī)向JSP文件發(fā)出請求,那么JSP引擎會創(chuàng)建多個線程來回應(yīng),記憶體中存在當(dāng)前的servlet文件,所以對客戶機(jī)的回應(yīng)是很快的。(4)若JSP文件已經(jīng)被修改,那么服務(wù)器會根據(jù)設(shè)定來決定是否要對其進(jìn)行重新編譯,若需要的話,用編譯結(jié)果來代替內(nèi)存中的servlet,然后重復(fù)上述步驟。(5)盡管JSP非常高效,但是調(diào)用時,會有一定的延時情況,是因為要進(jìn)行轉(zhuǎn)換與編譯。另外,無論何時,都會在內(nèi)存中刪除servlet因為JSP引擎缺少一些系統(tǒng)資源。因此,將首先調(diào)用jspDestroy()方法,并將回收servlet實例。2.2SSM框架介紹SSM有三種技術(shù)分別為:Spring、SpringMVC以及MyBatis。Spring是一種開放源碼框架,它出現(xiàn)在2003,是一種用于處理復(fù)雜的企業(yè)級應(yīng)用程序開發(fā)。Spring利用基礎(chǔ)JavaBean實現(xiàn)了過去只有EJB才能實現(xiàn)的功能。Spring是一種用于實現(xiàn)反轉(zhuǎn)和面向切面的容器框架。SpringMVC是SpringFrameWork的繼承者,為了方便進(jìn)行定制,SpringMVC分離了控制器模型對象、分派器和處理程序?qū)ο蟮慕巧?。MyBatis最初是Apache的一個開放源代碼項目,之后被Apache軟件基金會移植到了谷歌代碼中,并且將其命名為MyBatis。MyBatis是一個以Java為基礎(chǔ)的持久化框架。MyBatis在配置和初始映射中用到了一個簡單的XML或者注釋,它把Java的界面和POJOs映射成數(shù)據(jù)庫中的記錄。2.3Java技術(shù)介紹Java語言和C++語言有很多的相似之處,Java是面向?qū)ο笤O(shè)計語言,而C++卻不只是這樣。C語言中易導(dǎo)致錯誤的指針被Java所摒棄,為了減輕工作人員的工作,為了不讓被引用的對象占據(jù)內(nèi)存空間,所以Java增加了一個垃圾回收的功能,Java在新版本中又增加了一些新的語言特征,比如:泛型編程。相對簡單是Java語言的一個特點,虛擬機(jī)是Java語言所編寫的程序所需的基礎(chǔ),所以Java語言是可以進(jìn)行跨平臺的編寫。Java首先會把源碼編譯成二進(jìn)制代碼,再通過虛擬機(jī)在不同的平臺上進(jìn)行編譯,這種編譯是比較費時間的,所以Java程序性能都不是很好。第3章系統(tǒng)分析3.1可行性分析3.1.1技術(shù)可行性會用到的編寫語言,所運用到的數(shù)據(jù)庫類型,應(yīng)用的框架類型,這些都是系統(tǒng)開發(fā)時的可行性。在相關(guān)理論和技術(shù)上認(rèn)識到了系統(tǒng)的開發(fā),系統(tǒng)是基于SSM框架的,運用Java語言編程的,運用的MySQL數(shù)據(jù)庫。Idea是免費的,是好用的開發(fā)環(huán)境。3.1.2經(jīng)濟(jì)可行性在開發(fā)時所需與過去的開發(fā)計劃相一致,開發(fā)計劃的全部支出都有清楚的記錄,并且滿足開發(fā)計劃的需要。在這個系統(tǒng)完成之后,系統(tǒng)具有良好的發(fā)展和較高的價值,這就是系統(tǒng)的經(jīng)濟(jì)可行性。綜上所述,開發(fā)這種學(xué)生綜合測評系統(tǒng)在經(jīng)濟(jì)上是可行的。3.1.3操作可行性當(dāng)用戶使用系統(tǒng)時,會發(fā)現(xiàn)它比較容易,大多數(shù)功能是一眼就能看懂的,方便管理員使用相關(guān)的管理功能,方便老師對學(xué)生進(jìn)行評價,方便學(xué)生查詢相關(guān)信息。系統(tǒng)對不同用戶有著不同級別的使用權(quán)限管理。對此我認(rèn)為此系統(tǒng)是可以開發(fā)的。3.1.4安全可行性學(xué)生綜合測評系統(tǒng)能夠把所得到的學(xué)生個人信息、教師個人信息和學(xué)生綜合測評成績存儲到一個有權(quán)限的數(shù)據(jù)庫當(dāng)中,只有相應(yīng)的權(quán)限才可以對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行修改,否則不能修改,這就是系統(tǒng)的安全可行性。3.1.5法律可行性法律上來講,技術(shù)資料是通過符合法律法規(guī)的方式取得的,并且沒有抄襲其他人所發(fā)布的內(nèi)容,并沒有侵權(quán)內(nèi)容,引用部分有所標(biāo)注;開發(fā)的全過程都由個人完成,并沒有讓他人幫寫或設(shè)計。所以在法律層面上講是可行的。3.2需求分析通過對學(xué)生綜合測評系統(tǒng)的功能分析,可以得到學(xué)生綜合測評系統(tǒng)的不同用戶的不同需求,并且各功能之間要有相互的聯(lián)系,另外,為了避免來回打相同的代碼,所以運用到了頁面模塊。下面將介紹不同用戶界面下的各功能模塊,基于SSM的學(xué)生綜合測評系統(tǒng)有如下功能需求:(1)在管理員功能模塊中,學(xué)生和老師可以被管理員通過此模塊進(jìn)行管理,同樣也可以管理班級,并且管理員還可以對測評科目、項目和綜合測評進(jìn)行管理。(2)在教師功能模塊中,教師可以對學(xué)生的科目、項目和綜合測評的成績進(jìn)行管理。(3)在學(xué)生功能模塊中,學(xué)生可以查詢各項目、科目和綜合測評的成績,還能查看自己的個人資料,并且可以進(jìn)行相關(guān)修改,比如可以修改姓名、電話。3.3用例圖本系統(tǒng)的用例圖如圖3.1所示。圖3.1系統(tǒng)用例圖第4章系統(tǒng)設(shè)計4.1功能模塊設(shè)計通過對學(xué)生綜合測評系統(tǒng)的相關(guān)功能分析,就此可以畫出功能模塊圖,各功能模塊之間有相互聯(lián)系,除此之外還使用了頁面展現(xiàn)的方式,已實現(xiàn)的功能模塊可以通過代碼來命令,此行為是減少代碼的多次使用,系統(tǒng)分為登陸、用戶管理、個人中心、班級管理、項目管理、科目管理、綜合測評和系統(tǒng)管理等功能模塊:系統(tǒng)功能模塊如圖4.1所示:圖4.1系統(tǒng)功能模塊圖4.2數(shù)據(jù)庫設(shè)計數(shù)據(jù)的存取與讀出是一個數(shù)據(jù)庫實體表達(dá)的方式,為了存取與系統(tǒng)有關(guān)的數(shù)據(jù),編寫數(shù)據(jù)庫是其主要功能。根據(jù)存取方式的不同,將查詢分為列表和索引表兩類。有種圖,它展現(xiàn)出了數(shù)據(jù)和數(shù)據(jù)實體之間的聯(lián)系,這種圖被稱為E-R圖?;赟SM的學(xué)生綜合測評系統(tǒng)的實體圖、E-R圖如下所示:管理員實體圖如圖4.1所示:圖4.1管理員實體圖科目測評實體圖如圖4.2所示:圖4.2科目測評實體圖(3)項目測評實體圖如圖4.3所示:圖4.3項目測評實體圖(4)綜合測評實體圖如圖4.4所示:圖4.4綜合測評實體圖(5)班級實體圖如圖4.5所示:圖4.5班級實體圖(6)教師實體圖如圖4.6所示:圖4.6教師實體圖(7)學(xué)生實體圖如圖4.7所示:圖4.7學(xué)生實體圖(8)管理員對學(xué)生和教師進(jìn)行管理;教師教育學(xué)生并在學(xué)期的最后對學(xué)生進(jìn)行項目和科目測評,并最后結(jié)合給出綜合測評;學(xué)生自行查看個人的測評成績。E-R關(guān)系圖如圖4.8所示:圖4.8E-R關(guān)系圖為每個實體設(shè)置相應(yīng)的數(shù)據(jù)庫和相應(yīng)的表,學(xué)生綜合測評系統(tǒng)的具體數(shù)據(jù)庫設(shè)計如下:(1)管理員表users“管理員表users”是用來存取管理員信息的。users的結(jié)構(gòu)如表4.1所示。表4.1管理員表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵usernamevarchar10用戶名passwordvarchar10密碼rolevarchar10角色管理員addtimetimestamp新增時間CURRENT_TIMESTAMP(2)公告信息表news“公告信息表news”是用來存取公告信息的。news的結(jié)構(gòu)如表4.2所示。表4.2公告信息表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPtitlevarchar20標(biāo)題introductionlongtext2000簡介picturevarchar20圖片contentlongtext2000內(nèi)容(3)班級表banji“班級表banji”是用來存取班級信息的。banji的結(jié)構(gòu)如表4.3所示。表4.3班級表字段名稱類型長度字段說明主鍵默認(rèn)值Idbigint主鍵主鍵Addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPBanjivarchar20班級(4)科目測評表kemuceping“科目測評表kemuceping”是用來存取科目測評信息的。kemuceping的結(jié)構(gòu)如表4.4所示。表4.4科目測評表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPcepingbianhaovarchar20測評編號kemufenleivarchar20科目分類cepingchengjiint測評成績(分)cepingshijiandate測評時間jiaoshigonghaovarchar20教師工號jiaoshixingmingvarchar20教師姓名xueshengzhanghaovarchar20學(xué)生賬號xueshengxingmingvarchar20學(xué)生姓名banjivarchar20班級(5)科目分類表kemufenlei“科目分類kemufenlei”是用來存取科目分類信息的。kemufenlei的結(jié)構(gòu)如表4.5所示。表4.5科目分類表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPkemufenleivarchar20科目分類(6)綜合測評表zongheceping“綜合測評表zongheceping”是用來存取綜合測評信息的。zongheceping的結(jié)構(gòu)如表4.6所示。表4.6綜合測評表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPcepingbianhaovarchar20測評編號cepingchengjivarchar20測評成績pingyulongtext200評語banjipaimingvarchar20班級排名nianjipaimingvarchar20年級排名cepingshijiandate測評時間jiaoshigonghaovarchar20教師工號jiaoshixingmingvarchar20教師姓名xueshengzhanghaovarchar20學(xué)生賬號xueshengxingmingvarchar20學(xué)生姓名banjivarchar20班級(7)項目測評表xiangmuceping“項目測評表xiangmuceping”是用來存取項目測評信息的。xiangmuceping的結(jié)構(gòu)如表4.7所示。表4.7項目測評表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPcepingbianhaovarchar20測評編號xiangmufenleivarchar20項目分類cepingchengjivarchar20測評成績cepingshijiandate測評時間jiaoshigonghaovarchar20教師工號jiaoshixingmingvarchar20教師姓名xueshengzhanghaovarchar20學(xué)生賬號xueshengxingmingvarchar20學(xué)生姓名banjivarchar20班級idbigint主鍵主鍵yaofeivarchar20藥費(8)項目分類表xiangmufenlei“科目分類xiangmufenlei”是用來存取項目分類信息的。xiangmufenlei的結(jié)構(gòu)如表4.8所示。表4.8項目分類表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPxiangmufenleivarchar20項目分類(9)教師表jiaoshi“教師表jiaoshi”是用來存取教師信息的。jiaoshi的結(jié)構(gòu)如表4.9所示。表4.9教師表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPjiaoshigonghaovarchar20教師工號jiaoshixingmingvarchar20教師姓名mimavarchar20密碼xingbievarchar20性別touxianglongtext200頭像dianhuahaomavarchar20電話號碼renkebanjivarchar20任課班級(10)學(xué)生表xuesheng“學(xué)生表xuesheng”是用來存取學(xué)生信息的。xuesheng的結(jié)構(gòu)如表4.10所示。表4.10學(xué)生表字段名稱類型長度字段說明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時間CURRENT_TIMESTAMPxueshengzhanghaovarchar20學(xué)生賬號xueshengxingmingvarchar20學(xué)生姓名mimavarchar20密碼xingbievarchar20性別touxianglongtext200頭像nianlingint年齡dianhuahaomavarchar20電話號碼shenfenzhengvarchar20身份證banjivarchar20班級第5章系統(tǒng)實現(xiàn)5.1登錄學(xué)生、教師和管理員通過輸入賬號密碼并選擇角色后登錄到學(xué)生綜合測評系統(tǒng)。用戶名或者密碼輸入不正確就不能進(jìn)入系統(tǒng),并且提示錯誤。登錄如圖5.1所示:圖5.1登錄實現(xiàn)該功能的關(guān)鍵代碼如下。@IgnoreAuth @RequestMapping(value="/login") publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){ YonghuEntityuser=yonghuService.selectOne(newEntityWrapper<YonghuEntity>().eq("yonghuzhanghao",username)); if(user==null||!user.getMima().equals(password)){ returnR.error("賬號或密碼不正確"); } Stringtoken=tokenService.generateToken(user.getId(),username,"yonghu","用戶"); returnR.ok().put("token",token); }5.2班級管理以管理員身份登錄到后臺系統(tǒng)中,進(jìn)入班級列表界面,可以對班級進(jìn)行查看、添加、修改、刪除、批量刪除等操作。刪除班級如圖5.2所示,新增班級如圖5.3所示,查詢班級如圖5.4所示,修改班級如圖5.5所示:圖5.2刪除班級@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){banjiService.deleteBatchIds(Arrays.asList(ids));returnR.ok();圖5.3新增班級實現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/add")publicRsave(@RequestBodyBanjiEntitybanji,HttpServletRequestrequest){banji.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(banji);banjiService.insert(banji);returnR.ok();圖5.4查詢班級@RequestMapping("/query")publicRquery(BanjiEntitybanji){EntityWrapper<BanjiEntity>ew=newEntityWrapper<BanjiEntity>(); ew.allEq(MPUtil.allEQMapPre(banji,"banji")); BanjiViewbanjiView=banjiService.selectView(ew); returnR.ok("查詢班級成功").put("data",banjiView);}}圖5.5修改班級@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyBanjiEntitybanji,HttpServletRequestrequest){//ValidatorUtils.validateEntity(banji);banjiService.updateById(banji);//全部更新returnR.ok();}5.3用戶管理1.學(xué)生管理管理員登錄到后臺系統(tǒng)后,可以選擇學(xué)生管理,對學(xué)生進(jìn)行管理,還可以對學(xué)生進(jìn)行批量導(dǎo)入。學(xué)生管理如圖5.6所示,刪除學(xué)生如圖5.7所示,新增學(xué)生如圖5.8所示,導(dǎo)入學(xué)生如圖5.9所示:圖5.6學(xué)生管理圖5.7刪除學(xué)生圖5.8新增學(xué)生圖5.9導(dǎo)入學(xué)生實現(xiàn)導(dǎo)入功能的關(guān)鍵代碼如下。@RequestMapping("/importExcel")publicRimportExcel(@RequestParam("file")MultipartFilefile){try{//獲取輸入流InputStreaminputStream=file.getInputStream();//創(chuàng)建讀取工作簿W(wǎng)orkbookworkbook=WorkbookFactory.create(inputStream);//獲取工作表Sheetsheet=workbook.getSheetAt(0);//獲取總行introws=sheet.getPhysicalNumberOfRows();if(rows>1){//獲取單元格for(inti=1;i<rows;i++){Rowrow=sheet.getRow(i);XueshengEntityxueshengEntity=newXueshengEntity();xueshengEntity.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());Stringxueshengzhanghao=CommonUtil.getCellValue(row.getCell(0));xueshengEntity.setXueshengzhanghao(xueshengzhanghao);Stringxueshengxingming=CommonUtil.getCellValue(row.getCell(1));xueshengEntity.setXueshengxingming(xueshengxingming);Stringmima=CommonUtil.getCellValue(row.getCell(2));xueshengEntity.setMima(mima);Stringxingbie=CommonUtil.getCellValue(row.getCell(3));xueshengEntity.setXingbie(xingbie);Stringnianling=CommonUtil.getCellValue(row.getCell(4));xueshengEntity.setNianling(Integer.parseInt(nianling));Stringdianhuahaoma=CommonUtil.getCellValue(row.getCell(5));xueshengEntity.setDianhuahaoma(dianhuahaoma);Stringshenfenzheng=CommonUtil.getCellValue(row.getCell(6));xueshengEntity.setShenfenzheng(shenfenzheng);Stringbanji=CommonUtil.getCellValue(row.getCell(7));xueshengEntity.setBanji(banji);//想數(shù)據(jù)庫中添加新對象xueshengService.insert(xueshengEntity);//方法}}inputStream.close();}catch(InvalidFormatExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}returnR.ok("導(dǎo)入成功");}2.教師管理管理員可以選擇教師管理,對教師進(jìn)行管理,教師管理如圖5.10所示,刪除教師如圖5.11所示,新增教師如圖5.12所示:圖5.10教師管理圖5.11刪除教師圖5.12新增教師5.4個人信息管理學(xué)生登錄進(jìn)入系統(tǒng),能在個人中心查看自己的信息,如果發(fā)現(xiàn)問題可以進(jìn)行修改,但是不是所有信息都可以修改,像學(xué)生姓名、電話號碼之類的可以修改,此外還可以上傳自己的頭像,按提交就可以修改成功。個人信息如圖5.13所示:圖5.13個人信息管理實現(xiàn)該功能的關(guān)鍵代碼如下。@RequestMapping("/update")publicRupdate(@RequestBodyYonghuEntityyonghu,HttpServletRequestrequest){//ValidatorUtils.validateEntity(yonghu);yonghuService.updateById(yonghu);//全部更新returnR.ok();}5.5項目測評管理教師登錄系統(tǒng)之后,在項目測評管理界面,可以點擊添加轉(zhuǎn)到添加界面,輸入學(xué)生姓名、手機(jī)號以及測評成績等詳細(xì)信息,隨后,點擊提交就可以將成績上傳。項目測評管理如圖5.14所示,刪除項目測評如圖5.15所示,新增項目測評如圖5.16所示,管理員也可以管理學(xué)生項目測評,如圖5.17所示,學(xué)生可以登錄系統(tǒng)查看個人項目測評,如圖5.18所示:圖5.14教師項目測評管理圖5.15教師刪除項目測評圖5.16教師新增項目測評圖5.17管理員項目測評管理圖5.18學(xué)生查看項目測評實現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/query")publicRquery(XiangmucepingEntityxiangmuceping){EntityWrapper<XiangmucepingEntity>ew=newEntityWrapper<XiangmucepingEntity>(); ew.allEq(MPUtil.allEQMapPre(xiangmuceping,"xiangmuceping")); XiangmucepingViewxiangmucepingView=xiangmucepingService.selectView(ew); returnR.ok("查詢項目測評成功").put("data",xiangmucepingView);}@RequestMapping("/add")publicRadd(@RequestBodyXiangmucepingEntityxiangmuceping,HttpServletRequestrequest){xiangmuceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(xiangmuceping);xiangmucepingService.insert(xiangmuceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyXiangmucepingEntityxiangmuceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(xiangmuceping);xiangmucepingService.updateById(xiangmuceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){xiangmucepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.6科目測評管理以教師用戶身份登錄到前臺界面,在科目測評管理界面,可以點擊添加進(jìn)入添加界面,輸入科目、學(xué)生姓名、手機(jī)號以及測評成績等詳細(xì)信息點擊提交進(jìn)行科目測評。科目測評管理如圖5.19所示,刪除科目測評如圖5.20所示,新增科目測評如圖5.21所示,管理員也可以管理學(xué)生科目測評,如圖5.22所示,學(xué)生可以登錄系統(tǒng)查看個人科目測評,如圖5.23所示:圖5.19教師科目測評管理圖5.20教師刪除科目測評圖5.21教師新增科目測評圖5.22管理員科目測評管理圖5.23學(xué)生查看科目測評實現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/query")publicRquery(KemucepingEntitykemuceping){EntityWrapper<KemucepingEntity>ew=newEntityWrapper<KemucepingEntity>(); ew.allEq(MPUtil.allEQMapPre(kemuceping,"kemuceping")); KemucepingViewkemucepingView=kemucepingService.selectView(ew); returnR.ok("查詢科目測評成功").put("data",kemucepingView);}@RequestMapping("/add")publicRadd(@RequestBodyKemucepingEntitykemuceping,HttpServletRequestrequest){kemuceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(kemuceping);kemucepingService.insert(kemuceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyKemucepingEntitykemuceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(kemuceping);kemucepingService.updateById(kemuceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){kemucepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.7綜合測評管理以教師用戶身份登錄到前臺界面中,進(jìn)入綜合測評管理界面,在此界面可對學(xué)生的測評信息進(jìn)行添加、修改和刪除等操作,點擊添加進(jìn)入添加界面,輸入學(xué)生姓名、班級、班級排名、測評成績以及評語等詳細(xì)信息點擊提交進(jìn)行綜合測評。綜合測評管理如圖5.24所示,刪除綜合測評如圖5.25所示,新增綜合測評如圖5.26所示,以管理員登錄可以查看、修改和刪除所有學(xué)生的各綜合測評成績,還可以通過測評成績進(jìn)行查詢不同學(xué)生的成績,如圖5.27所示,學(xué)生可以登錄系統(tǒng)查看個人綜合測評,如圖5.28所示:圖5.24教師綜合測評管理圖5.25教師刪除綜合測評圖5.26教師新增綜合測評圖5.27管理員綜合測評管理圖5.28學(xué)生查看綜合測評實現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/query")publicRquery(ZonghecepingEntityzongheceping){EntityWrapper<ZonghecepingEntity>ew=newEntityWrapper<ZonghecepingEntity>(); ew.allEq(MPUtil.allEQMapPre(zongheceping,"zongheceping")); ZonghecepingViewzonghecepingView=zonghecepingService.selectView(ew); returnR.ok("查詢綜合測評成功").put("data",zonghecepingView);}@RequestMapping("/add")publicRadd(@RequestBodyZonghecepingEntityzongheceping,HttpServletRequestrequest){zongheceping.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zongheceping);zonghecepingService.insert(zongheceping);returnR.ok();}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyZonghecepingEntityzongheceping,HttpServletRequestrequest){//ValidatorUtils.validateEntity(zongheceping);zonghecepingService.updateById(zongheceping);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){zonghecepingService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.8系統(tǒng)管理管理員可以在系統(tǒng)管理界面管理公告。系統(tǒng)管理如圖5.29所示,刪除系統(tǒng)信息如圖5.30所示,新增系統(tǒng)信息如圖5.31所示:圖5.29系統(tǒng)信息管理圖5.30刪除系統(tǒng)信息圖5.31新增系統(tǒng)信息實現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/query")publicRquery(NewsEntitynews){EntityWrapper<NewsEntity>ew=newEntityWrapper<NewsEntity>(); ew.allEq(MPUtil.allEQMapPre(news,"news")); NewsViewnewsView=newsService.selectView(ew); returnR.ok("查詢公告信息成功").put("data",newsView);}@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyNewsEntitynews,HttpServletRequestrequest){//ValidatorUtils.validateEntity(news);newsService.updateById(news);//全部更新returnR.ok();}@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){newsService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}第6章系統(tǒng)測試每一個功能模塊和前端運行界面設(shè)計后,在正常使用之前,系統(tǒng)都要進(jìn)行不同的測試,這樣才能確保系統(tǒng)工作的可靠和穩(wěn)定,方便在正常使用之前,對系統(tǒng)進(jìn)行糾正和改進(jìn)。測試系統(tǒng)整體功能可以使用黑盒測試這一方法,TESTERS首先站在使用者的立場上,對黑盒進(jìn)行觀察,將與預(yù)期相一致的功能測試用例進(jìn)行對比,有助于確定系統(tǒng)中出現(xiàn)的問題,黑盒測試的主要方法就是偏移與門限分析,系統(tǒng)錯誤經(jīng)常發(fā)生在輸入和輸出值的邊界上,概率比內(nèi)部高得多,因此閾值分析進(jìn)一步確定了系統(tǒng)的穩(wěn)定性和可靠性,在確定輸入和輸出范圍后選擇操作系統(tǒng)閾值來測試系統(tǒng)。6.1測試目標(biāo)軟件測試是為了尋找開發(fā)過程中發(fā)生的錯誤,而不是為了驗證程序中是否存在錯誤。這樣做是為了發(fā)現(xiàn)錯誤然后去改正它,并不是為了讓人們知道程序是正確的。如果測試沒有發(fā)現(xiàn)錯誤可能測試的本身就是個錯誤,通過程序本身的特性和程序開發(fā)過程中發(fā)生的錯誤進(jìn)行分析,可以得到測試過程中存在的問題。通過本文對于程序的分析可以找到一種更有效果的測試方法,這樣就可以提高測試速度。測試出那些沒有錯誤的程序是很有用的,好的測試方法才能得到好的程序。6.2測試步驟測試和開發(fā)一樣,是要分步驟的,程序是由多個模塊組成的,所以系統(tǒng)測試的步驟如下:(1)測試是要試出程序中的代碼是否出現(xiàn)錯誤,發(fā)現(xiàn)設(shè)計中存在的錯誤。(2)測試程序就是發(fā)現(xiàn)項目中存在的錯誤。(3)使用錯誤信息進(jìn)行場景測試。6.3測試用例6.3.1登錄測試用例使用黑盒測試技術(shù)對系統(tǒng)的用戶使用界面的測試用例進(jìn)行測試,對不同用戶可以使用的不同模塊進(jìn)行了測試,在這里只表現(xiàn)出一部分的測試用例并且用表的形式呈現(xiàn)出來,如表6.1所示:表6.1登錄測試用例表測試編號測試目的操作步驟預(yù)期結(jié)果實際結(jié)果001登錄測試輸入正確的用戶名和密碼登錄成功登錄成功002登錄測試輸入錯誤的用戶名登錄失敗登錄失敗003登錄測試輸入錯誤的密碼登錄失敗登錄失敗6.3.2項目測評管理測試用例管理端在運行時要滿足瀏覽器的運行需求,比如添加項目測評信息測試、修改項目測評信息測試、刪除項目測評信息測試等。本節(jié)根據(jù)管理端的各模塊進(jìn)行測試,因考慮到本文篇幅有限,這里代表性的部分測試用例,如表6.2所示:表6.2項目測評管理測試用例表測試編號測試目的操作步驟預(yù)期結(jié)果實際結(jié)果001添加項目測評信息測試在添加頁面輸入項目測評信息,點擊確認(rèn)按鈕添加成功添加成功002修改項目測評信息測試在修改頁面修改項目測評信息,點擊確認(rèn)按鈕修改成功修改成功003刪除項目測評信息測試在管理項目測評信息頁面,點擊某一用戶的刪除按鈕刪除成功刪除成功004查詢項目測評信息測試在管理項目測評信息頁面查詢輸入框輸入要查詢的用戶名字,點擊查詢按鈕查詢成功查詢成功6.3.3科目測評管理測試用例管理端在運行時要滿足瀏覽器的運行需求,比如添加科目測評信息測試、修改科目測評信息測試、刪除科目測評信息測試等。本節(jié)根據(jù)管理端的各模塊進(jìn)行測試,因考慮到本文篇幅有限,這里代表性的部分測試用例,如表6.3所示:表6.3科目測評管理測試用例表測試編號測試目的操作步驟預(yù)期結(jié)果實際結(jié)果001添加科目測評信息測試在添加頁面輸入科目測評信息,點擊確認(rèn)按鈕添加成功添加成功002修改科目測評信息測試在修改頁面修改科目測評信息,點擊確認(rèn)按鈕修改成功修改成功003刪除科目測評信息測試在管理科目測評信息頁面,點擊某一用戶的刪除按鈕刪除成功刪除成功004查詢科目測評信息測試在管理科目測評信息頁面查詢輸入框輸入要查詢的用戶名字,點擊查詢按鈕查詢成功查詢成功6.3.4綜合測評管理測試用例管理端在運行時要滿足瀏覽器的運行需求,比如添加綜合測評信息測試、修改綜合測評信息測試、刪除綜合測評信息測試等。本節(jié)根據(jù)管理端的各模塊進(jìn)行測試,因考慮到本文篇幅有限,這里代表性的部分測試用例,如表6.4所示:表6.4綜合測評管理測試用例表測試編號測試目的操作步驟預(yù)期結(jié)果實際結(jié)果001添加綜合測評信息測試在添加頁面輸入綜合測評信息,點擊確認(rèn)按鈕添加成功添加成功002修改綜合測評信息測試在修改頁面修改綜合測評信息,點擊確認(rèn)按鈕修改成功修改成功003刪除綜合測評信息測試在管理綜合測評信息頁面,點擊某一用戶的刪除按鈕刪除成功刪除成功004查詢綜合測評信息測試在管理綜合測評信息頁面查詢輸入框輸入要查詢的用戶名字,點擊查詢按鈕查詢成功查詢成功6.4測試結(jié)論通過測試多個用例,可以相當(dāng)于對系統(tǒng)的功能進(jìn)行了全面的檢測,得到系統(tǒng)在測試過程中可以完美的運行,能夠把正確的數(shù)據(jù)展示給用戶,用戶也可以正常操作系統(tǒng),可以進(jìn)行相關(guān)的增刪改查,由此可以看出本系統(tǒng)的功能和用戶使用上都可以到達(dá)最初的期望。結(jié)論在本研究所實施基于SSM的學(xué)生綜合測評系統(tǒng)的過程中,首先講解了研究背景和意義,隨后羅列了國內(nèi)外的研究現(xiàn)狀,之后闡明了相關(guān)技術(shù)及其理論,隨后說明了開發(fā)工具,闡明了相關(guān)可行性,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論