摘要
本論文主要論述了如何使用JAVA語言開發(fā)一個學生選課系統(tǒng),本系統(tǒng)將嚴格按照軟件開發(fā)流程進行各個階段的工作,采用B/S架構,面向?qū)ο缶幊趟枷脒M行項目開發(fā)。在引言中,作者將論述學生選課系統(tǒng)的當前背景以及系統(tǒng)開發(fā)的目的,后續(xù)章節(jié)將嚴格按照軟件開發(fā)流程,對系統(tǒng)進行各個階段分析設計。
學生選課系統(tǒng)的主要使用者分為學生、教師、管理員,實現(xiàn)功能包括管理員:首頁、用戶管理(管理員、學生、教師)系統(tǒng)模塊(班級管理、課程信息、學生選課、教室信息、學生成績、通知公告)系統(tǒng)管理,學生:首頁、課程信息、學生成績、通知公告,教師:首頁、課程信息、學生選課、學生成績、通知公告等功能。由于本網(wǎng)站的功能模塊設計比較全面,所以使得整個學生選課系統(tǒng)信息管理的過程得以實現(xiàn)。
本系統(tǒng)的使用可以實現(xiàn)本學生選課系統(tǒng)管理的信息化,可以方便管理員進行更加方便快捷的管理,可以提高學生選課系統(tǒng)的管理效率。
關鍵詞:JAVA編程語言;MYSQL數(shù)據(jù)庫;學生選課系統(tǒng)
Abstract
This paper mainly discusses how to use java language to develop a student course selection system. The system will carry out the work of each stage in strict accordance with the software development process, and adopt B / S architecture and object-oriented programming idea for project development. In the introduction, the author will discuss the current background of the student course selection system and the purpose of system development. The subsequent chapters will analyze and design the system in each stage in strict accordance with the software development process.
The main users of the student course selection system are divided into students, teachers and administrators. The functions include administrators: home page, user management (administrators, students and teachers) system module (class management, course information, student course selection, classroom information, student achievement, notice announcement) system management, students: home page, course information, student achievement, notice announcement, teachers: home page, course information, student course selection, student achievement Notification and announcement functions. Because the functional module design of this website is relatively comprehensive, the information management process of the whole student course selection system can be realized.
The use of this system can realize the informatization of the management of the student course selection system, facilitate the administrator to manage more conveniently and quickly, and improve the management efficiency of the student course selection system.
Key words: Java programming language; Mysql database; Student course selection system
目錄
摘要 I
1 緒論 1
1.1研究背景 1
1.2研究現(xiàn)狀 1
1.3研究內(nèi)容 2
2 系統(tǒng)關鍵技術 3
2.1 SSM框架 3
2.2 JAVA技術 3
2.3 MYSQL數(shù)據(jù)庫 4
2.4 B/S結構 4
3 系統(tǒng)分析 6
3.1 可行性分析 6
3.1.1 技術可行性 6
3.1.2經(jīng)濟可行性 6
3.1.3操作可行性 6
3.2 系統(tǒng)性能分析 7
3.3 系統(tǒng)功能分析 7
3.4系統(tǒng)流程分析 9
3.4.1登錄流程 9
3.4.2注冊流程 10
3.4.3添加信息流程 10
3.4.4刪除信息流程 11
4 系統(tǒng)設計 12
4.1系統(tǒng)概要設計 12
4.2系統(tǒng)結構設計 12
4.3系統(tǒng)順序圖設計 13
4.3.1登錄模塊順序圖 13
4.3.2添加信息模塊順序圖 14
4.4數(shù)據(jù)庫設計 14
4.4.1數(shù)據(jù)庫E-R圖設計 14
4.4.2數(shù)據(jù)庫表設計 16
5 系統(tǒng)詳細設計 22
5.2管理員功能模塊 22
5.3學生后臺功能模塊 26
5.4教師功能模塊 28
6 系統(tǒng)測試 30
6.1 測試定義 30
6.2 測試目的 30
6.3測試方案 31
(1)模塊測試 31
(2)集成測試: 31
(3)驗收測試: 32
6.4系統(tǒng)分析 32
7 結論 34
參考文獻 35
謝辭 37
1 緒論
1.1研究背景
隨著網(wǎng)絡不斷的普及發(fā)展,學生選課系統(tǒng)依靠網(wǎng)絡技術的支持得到了快速的發(fā)展,首先要從用戶的實際需求出發(fā),通過了解用戶的需求開發(fā)出具有針對性的選課功能,利用目前網(wǎng)絡給用戶帶來的方便快捷這一特點對系統(tǒng)進行調(diào)整,設計的系統(tǒng)讓用戶的使用起來更加方便,本系統(tǒng)的主要目的就是給用戶帶來方便,用戶只要在家中就可以進行查看課程信息。
互聯(lián)網(wǎng)發(fā)展至今,已經(jīng)解決了很多我們解決不了的難題,使得我們工作更加便捷,提高了我們的工作效率。目前各行各業(yè)都在運用網(wǎng)絡信息管理程序,不同的人群也都接觸到信息管理,特別是在各大電商行業(yè)廣泛的應運起來。通過對當前網(wǎng)絡環(huán)境發(fā)展的分析與總結,開發(fā)學生選課系統(tǒng)可以改變以往的學生選課方式,改變傳統(tǒng)學生選課的狀態(tài),由于人群的不斷增多,使用傳統(tǒng)的線下學生選課模式已經(jīng)遠遠不能滿足于用戶需求了,而且越來越多的校園也在開通線上選課,所以開發(fā)一個學生選課系統(tǒng)可以解決校園不利于線下選課的問題,同時校園可以利用網(wǎng)絡對球類信息進行管理,設計的網(wǎng)站保證信息的完整安全,這樣才能提高工作效率,保證系統(tǒng)安全正常的運行。
1.2研究現(xiàn)狀
在國外他們的信息技術的發(fā)展是我國的許多倍,從1946年誕生在美國的世界上第一臺計算機開始,國外的信息技術就一直在飛速地發(fā)展,一些計算機應用軟件也紛紛出現(xiàn),軟件技術也一直在不斷完善和更新[3]。軟件行業(yè)早已遍布各個地方。
在國內(nèi),我國信息技術發(fā)展起步比較晚,后期慢慢的不斷地進行優(yōu)化和改革,才讓我們的信息技術上升到新的階段。在現(xiàn)在軟件開發(fā)的技術經(jīng)過大量研究和生活實踐基本能夠達到獨立開發(fā)系統(tǒng)應用的水平,生活中的各個行業(yè)也把軟件操作替換成傳統(tǒng)的記錄模式。軟件行業(yè)正是現(xiàn)在比較熱門的行業(yè)。
由于課程信息的增多,學生選課系統(tǒng)能夠?qū)W生選課進行完整的規(guī)劃和管理,而且校園也通過網(wǎng)絡系統(tǒng)來完成日常學生選課信息中的各種需求,所以網(wǎng)上購物系統(tǒng)的開發(fā)給人們帶來了足夠的便利,人們通過系統(tǒng)來滿足生活中的需求,因此,由于信息的增加,信息處理系統(tǒng)也隨之增加,通過網(wǎng)絡來滿足現(xiàn)代人群需求[5]。此次開發(fā)設計主要是實現(xiàn)學生選課系統(tǒng),結合java技術以及MYSQL數(shù)據(jù)庫進行設計,彌補目前在線球類購物網(wǎng)站中的不足,來開發(fā)出一款即方便又實用的學生選課系統(tǒng),并且設計的程序具有界面整潔、功能強大等特性,從全局來說,學生選課系統(tǒng)的設計解決了信息零散、不利于產(chǎn)品銷售的問題,該系統(tǒng)實現(xiàn),可以投入到真實環(huán)境中,這樣不僅能解決以上提及的問題,讓信息管理更準則。
1.3研究內(nèi)容
該學生選課系統(tǒng)的開發(fā)和設計施根據(jù)用戶的實際情況出發(fā),對系統(tǒng)的需求進行了詳細的分析,然后進行系統(tǒng)的整體設計,最后通過測試使得系統(tǒng)設計的更加完整,可以實現(xiàn)系統(tǒng)中所有的功能,在開始編寫論文之前親自到圖書館借閱SSM書籍,MYSQL數(shù)據(jù)庫書籍等編程書籍,然后針對開發(fā)的學生選課系統(tǒng),去網(wǎng)上查找了很多別人做好的系統(tǒng),參照他們的設計結果,來對自己的系統(tǒng)進行更加詳細的系統(tǒng)的設計,將系統(tǒng)中所有的功能結果一一列舉出來,然后進行需求分析,最后對所有的功能模塊進行編碼,最后完成系統(tǒng)的整體測試,實現(xiàn)系統(tǒng)的正常運行[6]。
這次編寫的論文包含了6個部分的內(nèi)容,具體內(nèi)容如下:
第一部分緒論:文章主要從課題背景以及研究現(xiàn)狀綜合闡述了開發(fā)此系統(tǒng)的必要性。
第二部分相關技術:系統(tǒng)開發(fā)用到的各種技術都大致做出了簡介。
第三部分系統(tǒng)分析:對系統(tǒng)的可行性分析以及對所有功能需求進行詳細的分析,來查看該系統(tǒng)是否具有開發(fā)的可能。
第四部分系統(tǒng)設計:功能模塊設計和數(shù)據(jù)庫設計這兩部分內(nèi)容都有專門的表格和圖片表示。
第五部分系統(tǒng)實現(xiàn):進行系統(tǒng)主要功能模塊的界面展示。
第六部分系統(tǒng)測試:測試系統(tǒng)的每一個功能是否能夠正常運行,是否可以滿足人們的需求。
2 系統(tǒng)關鍵技術
2.1 SSM框架
當今流行的“SSM組合框架”是Spring + SpringMVC + MyBatis的縮寫,受到很多的追捧,“組合SSM框架”是強強聯(lián)手、各司其職、協(xié)調(diào)互補的團隊精神。web項目的框架,通常更簡單的數(shù)據(jù)源。Spring屬于一個輕量級的反轉(zhuǎn)控制框架(IoC),但它也是一個面向表面的容器(AOP)。SpringMVC常常用于控制器的分類工作模式,與模型對象分開,程序?qū)ο蟮淖饔门c自動取款機進行處理。這種解耦治療使整個系統(tǒng)的個性化變得更加容易。MyBatis是一個良好的可持續(xù)性框架,支持普通SQL查詢,同時允許對存儲過程的高級映射進行數(shù)據(jù)的優(yōu)化處理。大型Java Web應用程序的由于開發(fā)成本太高,開發(fā)后難以維護和開發(fā)過程中一些難以解決的問題,而采用“SSM組合框架”,它允許建立業(yè)務層次結構,并為這個問題提供良好的解決方案。
2.2 JAVA技術
JAVA語言是目前軟件市場上應用最廣泛的語言開發(fā)程序。可以在多種平臺上運用的,兼容性比較強,適應市面上大多數(shù)操作系統(tǒng),不會出現(xiàn)亂碼的現(xiàn)像,其擴展性和維護性都更好,具有分析問題和解決問題的能力,是面向過程的程序設計方便我們編寫的代碼更強壯。
JAVA相對其它語言來說,比較簡單,編譯起來更方便一些,安全可靠性高。不完全統(tǒng)計,現(xiàn)在全世界大約有2000多萬人在使用它,JAVA既可以鑲嵌使用又可以獨力的使用。JAVA大致可以分成兩個部分,一種部分是JAVA負責的編譯,另一種是JAVA負責的運行。JAVA和C++語言很相像,但JAVA在編程時是一種以對象為導向的方式來進行編譯的,使得編出來的軟件可以單機使用,也可以在互聯(lián)網(wǎng)上使用,檢查出錯更為方便。JAVA分布式、體系結構中立的特點也使得其存儲更快,編議更簡單。面向?qū)ο蟀ㄋ膫€特點,一是封裝,就是說在定義類的時候可以實現(xiàn)一定的功能和屬性。二是抽象,屬于類的一種,可以把一個具有共同屬性的類封裝在一個抽象里,便于簡單編議。三是繼承,顧名思義就是帶有前者的特性。還有一個就是多態(tài)的特點,可以多種一起運用,表現(xiàn)了它可擴展性好。
2.3 MYSQL數(shù)據(jù)庫
網(wǎng)站的開發(fā)必須配套相應數(shù)據(jù)庫,數(shù)據(jù)庫具有一定的組織結構,能夠存放和管理數(shù)據(jù)信息,在以前數(shù)據(jù)庫的功能僅僅是數(shù)據(jù)保存和管理操作,但是時代的變遷和發(fā)展,現(xiàn)在的數(shù)據(jù)庫演變成了數(shù)據(jù)處理的方式,數(shù)據(jù)庫從最開始的簡單存放數(shù)據(jù)表格信息到現(xiàn)在的能夠存放成千上萬數(shù)據(jù)的大型數(shù)據(jù)庫,期間還是經(jīng)歷了許多的改革。
本次開發(fā)的學生選課系統(tǒng)使用的數(shù)據(jù)庫是MYSQL數(shù)據(jù)庫,該數(shù)據(jù)庫運行速度快,安全性能也很高,而且對使用的平臺沒有任何的限制,所以被廣泛應運到系統(tǒng)的開發(fā)中。MySQL是一個開源和多線程的關系管理數(shù)據(jù)庫系統(tǒng),MySQL是開放源代碼的數(shù)據(jù)庫,具有跨平臺性,雖然功能未必強大,導致很多人都了解這個數(shù)據(jù)庫的基本應用,在數(shù)據(jù)庫中,總共建立了10幾個表,這里面每個表都是相對應的,都各自有各自的聯(lián)系,數(shù)據(jù)庫意義重大,如果沒有數(shù)據(jù)庫的鏈接,就沒辦法運行程序,這顯然可以看見數(shù)據(jù)庫與程序的重要性,是緊密相連接的。
2.4 B/S結構
B/S(瀏覽器/服務器)結構是目前主流的網(wǎng)絡化的結構模式,它能夠把系統(tǒng)核心功能集中在服務器上面,可以幫助系統(tǒng)開發(fā)人員簡化操作,便于維護和使用。只需要用戶在客戶端安裝360瀏覽器、谷歌瀏覽器、QQ瀏覽器等當前大眾瀏覽器,在電腦里面安裝sqlserver、mysql數(shù)據(jù)庫等數(shù)據(jù)庫[10]。安裝好的瀏覽器與服務器端的數(shù)據(jù)庫進行信息數(shù)據(jù)的交互。很多專門軟件能夠做到的事情,采用B/S結構模式也能實現(xiàn),它能夠結合Web瀏覽器技術,ActiveX技術以及多種腳本語言等技術。幫助程序開發(fā)者節(jié)約了不少開發(fā)成本。目前B/S結構成為程序開發(fā)主流結構,它最好的地方就是沒有地點限制還不用專門安裝軟件,筆記本或者電腦能夠上網(wǎng)就能訪問系統(tǒng)。系統(tǒng)使用B/S進行開發(fā)在后期系統(tǒng)維護上面就會很省事,不用什么問題都在服務器上面操作,簡單的客戶端處理就解決部分問題,開發(fā)出來的程序跟用戶交互性上面也會增強,還可以實時刷新瀏覽器進行程序局部的數(shù)據(jù)信息更新。

圖2-1 B/S模式三層結構圖
3 系統(tǒng)分析
3.1 可行性分析
在系統(tǒng)開發(fā)之初要進行系統(tǒng)可行分析,這樣做的目的就是使用最小成本解決最大問題,一旦程序開發(fā)滿足用戶需要,帶來的好處也是很多的。下面我們將從技術上、操作上、經(jīng)濟上等方面來考慮這個系統(tǒng)到底值不值得開發(fā)。
3.1.1 技術可行性
本學生選課系統(tǒng)采用SSM技術、JAVA編程語言和MYSQL數(shù)據(jù)庫進行開發(fā)設計,作為計算機專業(yè)學生,在學校期間就接觸到許多關于編程方面的知識,當然也包括各種編程軟件,對他們的了解度也比較系統(tǒng),所以技術開發(fā)上面還是有一定把握。
3.1.2經(jīng)濟可行性
我在設計該系統(tǒng)的時候主要是從節(jié)約成本出發(fā),然后進行具體的系統(tǒng)的設計,在系統(tǒng)的設計過程中由于采用的所有工具以及技術支持全部都是免費的,因此不需要有任何的成本就可以進行該系統(tǒng)的設計。所用到的所有資源都是免費的,只要有網(wǎng)絡就可以進行下載使用,不需要支付相應的費用,因此該項目在經(jīng)濟方面是完全可以實行的。
3.1.3操作可行性
本人自己就是學生,程序開發(fā)經(jīng)驗不足,在界面設計上面不會設計太復雜,要講究簡單好看,操作上要方便,不能讓用戶覺得不流暢。用戶一旦進入操作界面,界面上就會有相應提示,跟著操作提示就可以找到對應的功能操作模塊,對于用戶來說免培訓就能使用。
從上面幾個部分的可行性分析得出,這次開發(fā)的學生選課系統(tǒng)在開發(fā)上面沒有什么大問題,值得開發(fā)。
3.2 系統(tǒng)性能分析
(1)系統(tǒng)響應效率:頁面響應時問應該在3秒以內(nèi),最長不能超過4秒,并支持至少10000人同時在線所有系統(tǒng)。
(2)界面簡潔清晰:系統(tǒng)界面要求簡單明了,容易操作,符合用戶操作習慣。
(3)儲存性高:因為學生選課系統(tǒng)中有很多的信息需要存儲,因此對于系統(tǒng)的存儲量有很大的要求,需要有一個強大的數(shù)據(jù)庫的支持才能確保所有的信息都能安全穩(wěn)定的進行存儲。
(4)易學性:該系統(tǒng)在操作上必須簡單好上手,沒有很多復雜的操作,只需要簡單的進行學習就能操作該系統(tǒng)。
(5)穩(wěn)定性需求:開發(fā)的學生選課系統(tǒng)要求運行穩(wěn)定,運行過程中無界面不清楚、字體模糊等現(xiàn)象。
(6)穩(wěn)定性:開發(fā)的學生選課系統(tǒng)要求運行穩(wěn)定,運行過程中無界面不清楚、字體模糊等現(xiàn)象。
3.3 系統(tǒng)功能分析
本學生選課系統(tǒng)主要包括三大功能模塊,即學生功能模塊、管理員功能模塊和教師模塊。
(1)管理員模塊:系統(tǒng)中的核心用戶是系統(tǒng)管理員,管理員登錄后,通過管理員菜單來管理后臺系統(tǒng)。主要功能有:首頁、用戶管理(管理員、學生、教師)系統(tǒng)模塊(班級管理、課程信息、學生選課、教室信息、學生成績、通知公告)等功能。管理員用例圖如圖3-1所示。

圖3-1 管理員用例圖
(2)教師:首頁、課程信息、學生選課、學生成績、通知公告等功能。教師用例圖如圖3-2所示。

圖3-2教師用例圖
(3)學生:首頁、課程信息、學生成績、通知公告等功能。學生用例圖如圖3-3所示。

圖3-3學生用例圖
3.4系統(tǒng)流程分析
3.4.1登錄流程
登錄模塊主要滿足管理員以及用戶的權限登錄,用戶登錄流程圖如圖3-4所示。

圖3-4 登錄流程圖
3.4.2注冊流程
未有賬號的用戶可進入注冊界面進行注冊操作,用戶注冊流程圖如圖3-5所示。

圖3-5 注冊流程圖
3.4.3添加信息流程
用戶在添加信息時,信息編號自動生成,系統(tǒng)會對添加的信息進行驗證,驗證通過則添加至數(shù)據(jù)庫,添加信息成功,反之添加失敗。添加信息流程如圖3-6所示。

圖3-6 添加信息流程圖
3.4.4刪除信息流程
用戶可選擇要刪除的信息進行信息刪除操作,在刪除信息時系統(tǒng)提示是否確定刪除信息,是則刪除信息成功,系統(tǒng)數(shù)據(jù)庫將信息進行刪除。刪除信息流程圖如圖3-7所示。

圖3-7 刪除信息流程圖
4 系統(tǒng)設計
4.1系統(tǒng)概要設計
本學生選課系統(tǒng)選擇B/S結構(Browser/Server,瀏覽器/服務器結構)和基于Web服務兩種模式。適合在互聯(lián)網(wǎng)上進行操作,只要用戶能連網(wǎng),任何時間、任何地點都可以進行系統(tǒng)的操作使用。系統(tǒng)工作原理圖如圖4-1所示:

圖4-1 系統(tǒng)工作原理圖
4.2系統(tǒng)結構設計
整個系統(tǒng)是由多個功能模塊組合而成的,要將所有的功能模塊都一一列舉出來,然后進行逐個的功能設計,使得每一個模塊都有相對應的功能設計,然后進行系統(tǒng)整體的設計。
本學生選課系統(tǒng)結構圖如圖4-2所示。

圖4-2 系統(tǒng)功能結構圖
4.3系統(tǒng)順序圖設計
4.3.1登錄模塊順序圖
登錄模塊主要滿足了管理員以及用戶的權限登錄,登錄模塊順序圖如圖4-3所示。

圖4-3 登錄順序圖
4.3.2添加信息模塊順序圖
管理員以及用戶登錄后均可進行添加信息操作,添加信息模塊順序圖如圖4-4所示。

圖4-4 添加信息順序圖
4.4數(shù)據(jù)庫設計
一個好的數(shù)據(jù)庫可以關系到程序開發(fā)的優(yōu)劣,數(shù)據(jù)庫設計離不開表結構的設計,還有表與表之間的聯(lián)系,以及系統(tǒng)開發(fā)需要設計的數(shù)據(jù)表內(nèi)容等信息。在進行數(shù)據(jù)庫設計期間,要結合實際情況來對數(shù)據(jù)庫進行針對性的開發(fā)設計。
4.4.1數(shù)據(jù)庫E-R圖設計
本學生選課系統(tǒng)采用的是MYSQL數(shù)據(jù)庫,數(shù)據(jù)存儲快,因為學生選課系統(tǒng),主要的就是對信息的管理,信息內(nèi)容比較多,這就需要好好的設計一個好的數(shù)據(jù)庫,分類要清楚,不能添加信息的時候,造成信息太過混亂,設計好的數(shù)據(jù)庫首先就需要先把各個實體之間的關系表達明確,系統(tǒng)的E-R圖如下圖所示:
1、學生注冊實體圖如圖4-5所示:

圖4-5學生注冊實體圖
2、課程信息實體圖如圖4-6所示:

圖4-6課程信息實體圖
3、管理員信息管理實體圖如圖4-7所示:

圖4-7 管理員信息管理實體圖
4.4.2數(shù)據(jù)庫表設計
將數(shù)據(jù)庫概念設計的E-R圖轉(zhuǎn)換為關系數(shù)據(jù)庫。在關系數(shù)據(jù)庫中,數(shù)據(jù)關系由數(shù)據(jù)表組成,但是表的結構表現(xiàn)在表的字段上。
|
|||||
class_management |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
class_management_id |
int |
11 |
否 |
主鍵 |
班級管理ID |
class_name |
varchar |
64 |
是 |
班級名稱 |
|
headmaster |
varchar |
64 |
是 |
班主任 |
|
class_size |
int |
11 |
是 |
班級人數(shù) |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
classroom_information |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
classroom_information_id |
int |
11 |
否 |
主鍵 |
教室信息ID |
classroom_number |
varchar |
64 |
是 |
教室號 |
|
position |
varchar |
64 |
是 |
位置 |
|
capacity |
int |
11 |
是 |
可容納人數(shù) |
|
classroom_equipment |
text |
0 |
是 |
教室設備 |
|
scheduled_class_time |
text |
0 |
是 |
已排課時間 |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
course_information |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
course_information_id |
int |
11 |
否 |
主鍵 |
課程信息ID |
course_number |
varchar |
64 |
是 |
課程編號 |
|
course_name |
varchar |
64 |
是 |
課程名稱 |
|
teacher |
int |
11 |
是 |
任課老師 |
|
school_year |
varchar |
64 |
是 |
學年 |
|
semester |
varchar |
64 |
是 |
學期 |
|
class_time |
varchar |
64 |
是 |
上課時間 |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
notice_announcement |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
notice_announcement_id |
int |
11 |
否 |
主鍵 |
通知公告ID |
title |
varchar |
64 |
是 |
標題 |
|
relevant_attachments |
varchar |
255 |
是 |
相關附件 |
|
publisher |
varchar |
64 |
是 |
發(fā)布人 |
|
release_date |
date |
0 |
是 |
發(fā)布日期 |
|
content |
text |
0 |
是 |
內(nèi)容 |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
student |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
student_id |
int |
11 |
否 |
主鍵 |
學生ID |
student_number |
varchar |
64 |
否 |
學號 |
|
student_name |
varchar |
64 |
是 |
學生姓名 |
|
class_name |
varchar |
64 |
是 |
班級名稱 |
|
examine_state |
varchar |
16 |
否 |
審核狀態(tài) |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
user_id |
int |
11 |
否 |
用戶ID |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
student_achievement |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
student_achievement_id |
int |
11 |
否 |
主鍵 |
學生成績ID |
course_number |
varchar |
64 |
是 |
課程編號 |
|
course_name |
varchar |
64 |
是 |
課程名稱 |
|
school_year |
varchar |
64 |
是 |
學年 |
|
teacher |
int |
11 |
是 |
任課老師 |
|
student_number |
int |
11 |
是 |
學號 |
|
student_name |
varchar |
64 |
是 |
學生姓名 |
|
test_name |
varchar |
64 |
是 |
考試名稱 |
|
examination_results |
varchar |
64 |
是 |
考試成績 |
|
teacher_comments |
text |
0 |
是 |
教師評語 |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
student_course_selection |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
student_course_selection_id |
int |
11 |
否 |
主鍵 |
學生選課ID |
course_number |
varchar |
64 |
是 |
課程編號 |
|
course_name |
varchar |
64 |
是 |
課程名稱 |
|
teacher |
int |
11 |
是 |
任課老師 |
|
school_year |
varchar |
64 |
是 |
學年 |
|
class_time |
varchar |
64 |
是 |
上課時間 |
|
student_number |
int |
11 |
是 |
學號 |
|
student_name |
varchar |
64 |
是 |
學生姓名 |
|
class_name |
varchar |
64 |
是 |
班級名稱 |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
|
update_time |
timestamp |
0 |
否 |
更新時間 |
|
|
|||||
teacher |
|||||
字段名稱 |
類型 |
長度 |
不是null |
主鍵 |
字段說明 |
teacher_id |
int |
11 |
否 |
主鍵 |
教師ID |
teacher_job_number |
varchar |
64 |
否 |
教師工號 |
|
teacher_name |
varchar |
64 |
是 |
教師姓名 |
|
examine_state |
varchar |
16 |
否 |
審核狀態(tài) |
|
recommend |
int |
11 |
否 |
智能推薦 |
|
user_id |
int |
11 |
否 |
用戶ID |
|
create_time |
datetime |
0 |
否 |
創(chuàng)建時間 |
5 系統(tǒng)詳細設計
5.2管理員功能模塊
管理員登錄,通過填寫注冊時輸入的用戶名、密碼、角色進行登錄,如圖5-1所示。

圖5-1管理員登錄界面圖
管理員登錄進入學生選課系統(tǒng)可以查看首頁、用戶管理(管理員、學生、教師)系統(tǒng)模塊(班級管理、課程信息、學生選課、教室信息、學生成績、通知公告)等信息,如圖5-2所示。

圖5-2管理員功能界面圖
課程管理,在課程管理頁面中可以查看課程等信息,還可以根據(jù)需要對課程信息進行修改或刪除等詳細操作,如圖5-3所示。

圖5-3課程管理界面圖
教師管理,在教師管理頁面中可以查看索引、教師工號、密碼、教師姓名、性別、照片、職稱、聯(lián)系電話、教師郵箱等信息,并可根據(jù)需要進行修改或刪除等操作,如圖5-4所示。

圖5-4教師管理界面圖
課程信息管理,在課程信息管理頁面中可以查看索引、課程、圖片、課程視頻、學習資料、教師工號、教師姓名、教師郵箱等信息,并可根據(jù)需要進行修改或刪除等詳細操作,如圖5-5所示。

圖5-5課程信息管理界面圖
學生管理,在學生管理頁面中可以查看索引、學號、密碼、學生姓名、性別、頭像、專業(yè)、班級、手機、郵箱等信息,并且根據(jù)需要進行修改或刪除等詳細操作,如圖5-6所示。

圖5-6學生管理界面圖
班級管理,在班級管理管理頁面中可以查看索引、班級名稱、班主任、班級人數(shù)等信息,并且根據(jù)需要進行修改或刪除等詳細操作,如圖5-7所示。

圖5-7班級管理界面圖
學生成績管理,在學生成績管理頁面中可以查看學號、學生姓名、考試名稱、考試成績、教師評語等信息,并且根據(jù)需要進行修改或刪除等詳細操作,如圖5-8所示。

圖5-8管理員管理界面圖
個人信息,在個人信息頁面中可以查看管理員個人信息等信息,并且根據(jù)需要對個人需要進行修改或刪除進行操作,如圖5-9所示。

圖5-9個人信息界面圖
5.3學生后臺功能模塊
學生登錄進入學生選課系統(tǒng)可以查看首頁、個人中心、學生選課管理、學生作業(yè)管理、學生咨詢管理、我的收藏管理等內(nèi)容,如圖5-10所示。

圖5-10學生后臺功能界面圖
個人中心,在個人中心頁面中通過填寫學號、學生姓名、性別、頭像、專業(yè)、班級、手機、郵箱等信息進行修改,如圖5-11所示。

圖5-11個人中心界面圖
學生選課管理,在學生選課管理頁面中可以查看索引、課程、圖片、教師工號、教師姓名、課程視頻、學習資料、選課備注、學號、學生姓名、專業(yè)、班級、審核回復、審核狀態(tài)等信息,如圖5-12所示。

圖5-12學生選課管理界面圖
學生成績管理,在學生成績管理頁面中可以查看索引、課程名稱、課程編號、學年、任課老師、學號、學生姓名、考試名稱、考試成績、等信息,如圖5-13所示。

圖5-13學生作業(yè)管理界面圖
5.4教師功能模塊
教師登錄進入學生選課系統(tǒng)可以查看首頁、課程信息、學生選課、學生成績、通知公告等內(nèi)容,如圖5-14所示。

圖5-14教師功能界面圖
學生選課,在學生選課頁面中通過填寫課程編號、課程名稱、任課老師、學年、上課時間、學號、學生姓名等信息進行修改,如圖5-15所示。

圖5-15學生選課界面圖
6 系統(tǒng)測試
一個系統(tǒng)設計好后,就會進入測試階段,測試的目標是檢驗設計好的網(wǎng)站是否可以正常無誤的運行,盡可能的發(fā)現(xiàn)網(wǎng)站的問題,已使后期網(wǎng)站投入使用后網(wǎng)站盡少出錯。
6.1 測試定義
系統(tǒng)測試主要是判斷系統(tǒng)是否可以正常運行,功能模塊是否可以實現(xiàn)操作。程序代碼中是否有錯誤出現(xiàn)。測試程序是開發(fā)過程中的一個主要問題。就算系統(tǒng)完成的再好,再進行程序測試時也會也會發(fā)現(xiàn)一個重來沒有被發(fā)現(xiàn)的錯誤信息。
測試不僅是系統(tǒng)開發(fā)的開始,而且應該貫穿整個系統(tǒng)的整個生命周期。評估系統(tǒng)質(zhì)量的方法不局限于系統(tǒng)編碼和過程,應該與軟件設計工作和歷史需求分析密切相關。系統(tǒng)錯誤,不一定是代碼錯誤,可能是階段的設計摘要和設計細節(jié)存在問題,問題也可能出現(xiàn)在需求分析階段[13]。從實際情況來看,最初的問題很可能是一個小錯誤,根據(jù)按鈕的原理,按鈕后的按鈕位錯將是所有位錯。該系統(tǒng)的原因也同樣適用,隨著后續(xù)的開發(fā)工作,誤差將越來越嚴重。因此就應該對系統(tǒng)進行測試,在一開始就發(fā)現(xiàn)系統(tǒng)中存在的問題,就能保證以后系統(tǒng)能夠正常穩(wěn)定的運行。在測試系統(tǒng)中,開發(fā)人員應該站在客戶的角度來處理測試工作,而現(xiàn)在主要的測試方法是黑盒測試。測試的目的可以概括為以下幾點:首先,用戶界面和客戶需求是一致的,設置界面和設計風格統(tǒng)一;第二,創(chuàng)新設計接口規(guī)范設計標準,具有獨特的審美特征;最后,人類傳統(tǒng)的接口以滿足審美需求,不能盲目地追求一種獨特的,合理的規(guī)劃布局,符合審美標準。
6.2 測試目的
測試的目的在于要對系統(tǒng)的穩(wěn)定和可操作性能進行對照檢查。對于軟件的開發(fā)利用最終的目的在最后的測試和試用,這是一個不可缺少的重要環(huán)節(jié)。對于軟件開發(fā)者而言,在對每一個單獨的功能進行編排時候,都要有單獨的測試,并通過測試階段才可以研發(fā)多個功能性軟件,這樣既縮短了研發(fā)時間,也可以在的單個的早期測試中發(fā)現(xiàn)問題,以免融合后的軟件,在查找問題時就很難快速解決或者急速定位問題。
學生選課系統(tǒng)開發(fā)設計完成后,需要對其進行系統(tǒng)測試,測試的主要目的就是發(fā)現(xiàn)并找出系統(tǒng)中存在的問題,并及時的進行解決,確保系統(tǒng)可以正常穩(wěn)定的運行下去,在進行系統(tǒng)測試的時候,在一定要非常的認真、仔細,切記不能粗心,不能放過一個漏洞,測試時候一定不要著急,要按照之前指定好的測試步驟一步一步進行,并且將測試的結果進行詳細的記錄,我們在進行測試的時候做好選擇自動化的測試,這樣既可以節(jié)省時間而且也能確保測試的準確性,如果采用人工測試的方法就不會這么的方便,由于人工測試有很多不確定的因素,在測試過程中很可能會出現(xiàn)一些問題,用機器測試就不會出現(xiàn)任何的問題,而且機器不會疲憊會一直二等工作下去。在測試的時候一定要非常專注,時刻關注著測試的結果,一但發(fā)現(xiàn)異常及時進行修改,最后,測試完之后的文檔應該保存下來,方便以后測試時用到。系統(tǒng)測試的方法有很多,對于本學生選課系統(tǒng)的測試,我們使用了測試用得最多的黑盒測試方法來對該系統(tǒng)進行測試。
6.3測試方案
對測試計劃的把握是測試方案的重中之重。所有的技術難點應該都被包含在這個測試計劃之中。而且我們要保證能與目標形成一致性,以至于能夠測試出一些主要存在的錯誤和一些錯誤的漏洞??梢酝昝澜鉀Q這些問題就只有白盒測試或者黑盒測試[14]。
構造測試是白盒測試的另一個名字,了解與分析程序的結構以及性能功用的,從而我們可以得到最終想要的結果并且觀察出是不是每一條程序都能得到。
性能測試是黑盒測試別稱,程序本身的運作通過程序的進程來觀察,主要是看一下程序是不是能夠像我們預期的目標那樣發(fā)展,看一看我們的程序最終能不能完整的得到我們最后想要的功能和儲存想得到的數(shù)據(jù),到最后看一下我們的這個程序完整性能不能達到要求。
(1)模塊測試
單元測試就是模塊測試,顧名思義就是測試每個模塊所承擔的功能是否能夠?qū)崿F(xiàn),這個測試就是為了找出代碼在實際的設計運轉(zhuǎn)中某一些小的程序所出現(xiàn)的偏差,很好地改正這些錯誤,就說明我們模塊測試進行很成功過。
(2)集成測試:
集成測試就是對系統(tǒng)的測試以及對他子系統(tǒng)的一些性能測試,他檢查的事系統(tǒng)的包裝程序信息。找出其中的問題。他的優(yōu)勢主要有以下這幾點:
軟件耗費較少。
可以提前發(fā)現(xiàn)端口的錯誤。
更好的地位系統(tǒng)中錯誤的位置。
從底部往上面進行的方案針對于偏下層的結構,而中間的結構就采用折中的方法。
(3)驗收測試:
終于到了結尾性的工作了。就是為了給用戶看一下我們的系統(tǒng)功能是否達到了預期的效果。我采用了性能測試也就是黑盒測試對系統(tǒng)進行測試。
其結果是分別是:
有一定的差異在用戶的需求。
再者就是結果與之差不了多少。
到了最后了,我們發(fā)現(xiàn)的問題都是與用戶的需求存在一定的關聯(lián)。
1、登錄測試
測試點:登錄
測試的目標:輸入賬號密碼以及驗證碼后系統(tǒng)會自動進行驗證是否正確。
所用的環(huán)境:Windows10和IE瀏覽器。
輸入信息:用戶名、密碼。
步驟:
(1)首先我們打來瀏覽器,進入該系統(tǒng)的登錄界面。
(2)在進入頁面登錄部分以后可以進行對用戶名、密碼進行測試,具體測試輸入情況如下表6.1所示。
表6.1 登錄測試
情況 |
用戶名輸入 |
密碼輸入 |
期望結果 |
(1) |
15546219225 |
1244566 |
提示“用戶名或者密碼錯誤,或賬號未經(jīng)審核” |
(2) |
aaaaa |
123456 |
提示“用戶名或密碼錯誤,或者賬號未經(jīng)審核” |
(3) |
15546219225 |
hangguowei |
登陸成功 |
6.4系統(tǒng)分析
本學生選課系統(tǒng)設計要求基本都可以達到,此系統(tǒng)具有完整的軟件功能,良好的用戶界面,能夠正確的處理錯誤信息,而且能夠準確的提出錯誤的種類。但是系統(tǒng)測試時也出現(xiàn)了一些系統(tǒng)的不足和缺陷,所以在今后的日子里我會對其視覺上的不足作出修改,其次系統(tǒng)的代碼和數(shù)據(jù)庫出現(xiàn)了非常多的冗余現(xiàn)象,都是因為對編程技術的應用不夠熟練,在日后我會加強自己的自身學習和能力,減少這樣的冗余現(xiàn)象。
經(jīng)過對上述的測試結果分析,本學生選課系統(tǒng)無論是在技術方面,還是操作方面,還是經(jīng)濟方面都是完全可以實行的,并且經(jīng)過測試,該系統(tǒng)操作簡單,所有的功能都可以實現(xiàn),因此該系統(tǒng)可以滿足人們的使用需求,值得被推廣。
總體說來,軟件通過測試。
7 結論
本文研究了學生選課系統(tǒng)的設計與實現(xiàn),在文章開端首先對個研究背景、研究現(xiàn)狀和研究內(nèi)容作了簡單的介紹,然后通過系統(tǒng)分析,引申出本系統(tǒng)研究的主要內(nèi)容。
通過對SSM技術和MYSQL數(shù)據(jù)庫的簡介,從硬件和軟件兩反面說明了學生選課系統(tǒng)的設計與實現(xiàn)的可行性,本文結論及研究成果如下:實現(xiàn)了SSM與MYSQL相結合構建的學生選課系統(tǒng),通過本次學生選課系統(tǒng)的設計與實現(xiàn)的研究與實現(xiàn),我感觸到學習一門新技術,最重要的是實踐,只有多動手才能盡快掌握它,一個系統(tǒng)的開發(fā),經(jīng)驗是最重要的,經(jīng)驗不足,就難免會有許多考慮不周之處。要想吸引更多的用戶,系統(tǒng)的界面必須要美觀、有特色、友好,功能要健全。
由于在此之前對于SSM知識并不了解,所以從一開始就碰到許多困難,例如一開始的頁面顯示不規(guī)范、數(shù)據(jù)庫連接有問題已經(jīng)無法實現(xiàn)參數(shù)的傳遞等等,不過通過我不斷的查閱相關的資料,以及向老師同學請教,最后出現(xiàn)的所有的問題都得到了解決,通過這次的系統(tǒng)開發(fā),我學到了很多的知識,也明白了自己在哪些方面有不足的地方,尤其是學會如何從大量的信息中篩選出所需有用的信息,同時我更加深刻的體會到了,雖然書本上的大部分知識都是有價值,正確的,但實際上每個人編程的思路和對數(shù)據(jù)處理的方法、思想都是不同的,這就要求我們一定要通過實踐才能找到解決問題的方案。在此次畢業(yè)設計活動中,我不斷的提高了自己,也得到了寶貴的經(jīng)驗,我相信這些對我以后的發(fā)展都會有很大幫助。
通過這次學生選課系統(tǒng)的開發(fā),讓我學到了更多的知識,同時通過這次系統(tǒng)的設計也讓我明白了自己在哪方面有不足,以后加以學習爭取可以開發(fā)住更多有用的適用的系統(tǒng)軟件,本次系統(tǒng)的設計提高了我的編程水平,為了我今后系統(tǒng)的開發(fā)打下了結實的基礎。
參考文獻
[1]徐佩.新時期計算機軟件開發(fā)技術的應用及發(fā)展趨勢[J].農(nóng)家參謀,2019(08):167.
[2]張帥,崔婀娜,魏立波.互聯(lián)網(wǎng)+健康在線服務平臺的設計與實現(xiàn)[J].科技創(chuàng)新與應用,2019(10):91-92.
[3]谷利國,陳存田,張甲瑞.基于B/S模式的人事教育信息管理系統(tǒng)的分析與設計[J].電腦知識與技術,2019,15(10):58-59.
[4]胥新政,強毅.基于JSP的常用金屬材料標準檢索平臺開發(fā)設計[J].制造業(yè)自動化,2019,41(03):41-43+69.
[5]王祖維,南淮耀,張英.“互聯(lián)網(wǎng)+”視域下的高校學生公寓管理系統(tǒng)設計與實現(xiàn)——以沈陽師范大學為例[J].現(xiàn)代商貿(mào)工業(yè),2019,40(08):187-188.
[6]廖明華,齊攀.學生職業(yè)能力測評管理系統(tǒng)的設計與實現(xiàn)[J].廣東交通職業(yè)技術學院學報,2019,18(01):48-52.
[7]李冬冬,劉華明,畢學慧,王秀友.舊衣申領系統(tǒng)的設計與實現(xiàn)[J].電腦知識與技術,2019,15(08):47-50.
[8]李慶年.“互聯(lián)網(wǎng)+”視域下的人才招聘管理系統(tǒng)設計與實現(xiàn)[J].國際公關,2019(03):164-165.
[9]劉婷,彭煥峰,邵淑婷.基于云平臺的高校監(jiān)考管理系統(tǒng)[J].電腦知識與技術,2019,15(07):91-92.
[10]趙丙秀.基于百度AI平臺的Web人臉注冊和登錄系統(tǒng)的實現(xiàn)[J].電腦知識與技術,2019,15(07):114-115.
[11]戴昭穎,尹濤.鋼鐵行業(yè)成本預算系統(tǒng)開發(fā)應用實踐[J].電子技術與軟件工程,2019(04):29-30.
[12]曹燦,劉志剛.基于SSH和Layui的工程科學前沿與實踐系統(tǒng)[J].工業(yè)控制計算機,2019,32(02):91-92+96.
[13]謝路.基于Web的考務管理系統(tǒng)設計與實現(xiàn)[J].福建電腦,2019,35(01):136-137.
[14]張繼東.MySQL數(shù)據(jù)庫基于JSP的訪問技術[J/OL].電子技術與軟件工程,2017,(15):169(2017-08-03).
[15]韓思凡.Web開發(fā)中的JSP與HTML的基礎應用[J].科學技術創(chuàng)新,2020(14):71-72.
[16]NastitiAndini,DaehaKim,JongAhnChun.Operationalsoilmoisturemodelingusingamulti-stageapproachbasedonthegeneralizedcomplementaryprinciple[J].AgriculturalWaterManagement,2020,231.
[17]A.D.Titisari,D.Phillips,I.W.Warmada,Hartono,A.Idrus.40Ar/39ArgeochronologyofthePongkorlowsulfidationepithermalgoldmineralisation,WestJava,Indonesia[J].OreGeologyReviews,2020,119.
[18]FranciscoOrtin,OscarRodriguez-Prieto,NicolasPascual,MiguelGarcia.HeterogeneoustreestructureclassificationtolabelJavaprogrammersaccordingtotheirexpertiselevel[J].FutureGenerationComputerSystems,2020,105.
[19]SatyaKrismatama,IndahRiyantini,IwangGumilar,LantunParadhitaDewanti.SelectivityofFishingGearforScomberomorusguttatus(Bloch&Schneider,1801)CommoditiesinPangandaranFishingGround,WestJava[J].AsianJournalofFisheriesandAquaticResearch,2020.
[20]ZhongXiangfu,PlaAlbert,RaynerSimon.Jasmine:aJavapipelineforisomiRcharacterizationinmiRNA-Seqdata[J].Bioinformatics,2020,36(6).
謝辭
本次畢業(yè)設計圓滿的結束了,通過這次畢業(yè)設計我學到了很多的知識,也提高了我軟件開發(fā)的能力,在系統(tǒng)開發(fā)設計的過程中,出現(xiàn)了很多的問題,但是通過老師和同學們的幫助,最后所有的問題都得到了解決,因此我要感謝在此過程中對我?guī)椭睦蠋熀屯瑢W們,感謝指導老師幫助我選課題,給我做詳細的講解,給我提供設計所需要的各種設備,也經(jīng)常詢問我進度與成果,再有難點的時候給我解決思路,幫助我順利完成。沒有他的指導,也不會有我今天所展現(xiàn)出的成果。
首先我要感謝我的指導老師,指導老師在教學任務繁忙的情況下,抽出時間幫助我糾正我在設計當中出現(xiàn)的問題,并耐性地為我的論文作校正,是他的定期檢查和指導使得我們的畢業(yè)設計高質(zhì)量完成。他在我整個課題開發(fā)和設計的過程中,為程序的設計、框架的設計、代碼的撰寫方面以及論文框架的設計提供了很多寶貴的意見,并且為我推薦了許多有用的資料和文獻,他的指導和建議使我受益匪淺,有了指導老師的輔導和指點,我論文才能夠順利完成。老師的認真負責的工作態(tài)度和治學嚴謹之道使我們這些即將踏入社會的畢業(yè)生受益匪淺。
然后要感謝我的同學們,感謝大家對我這次畢業(yè)設計的幫助, 也感謝大家在大學生活中對我的陪伴,使得我的大學生活過的很快樂。
另外,我還要感謝父母,感謝一直以來對我的支持,讓我能夠順利的完成我的學業(yè),沒有你們也就沒有我的今天,感謝你們無私的付出,未來我一定會報答你們的。
最后,感謝在座的所有參加我論文答辯的老師們,感謝大家的聆聽,你們辛苦了。文章來源:http://www.zghlxwxcb.cn/news/detail-736151.html
免費領取項目源碼,請關注點贊+私聊文章來源地址http://www.zghlxwxcb.cn/news/detail-736151.html
到了這里,關于(附源碼)ssm學生選課系統(tǒng) 畢業(yè)設計170920的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!