




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
springboot智能排課系統摘要在網絡發展的時代,教育部對教師排課的越來越重視,學校的排課更加智能化,給教師帶來了很大的選擇余地,而且教師越來越追求更個性的需求。在這種時代背景下,網絡排課成為必須。本設計主要實現集人性化、高效率、便捷等優點于一身的智能排課系統,完成系統首頁、個人資料、輪播圖管理、公告消息管理、系統用戶(管理員、學生、教師)資源管理(校園資訊、資訊分類)模塊管理(學生信息、院系管理、專業管理、班級管理、課程信息、教室管理、選課信息、課程測試、提交測試、成績錄入、排課管理、課表管理)等功能模塊。系統通過瀏覽器與服務器進行通信,實現數據的交互與變更。只需通過一臺電腦,動動手指就可以操作系統,實現數據通信管理。整個系統的設計過程都充分考慮了數據的安全、穩定及可靠等問題,而且操作過程簡單。本系統通過科學的管理方式、便捷的服務提高了工作效率,減少了數據存儲上的錯誤和遺漏。本系統使用Java技術開發,SpringBoot框架,采用的數據庫是Mysql。在設計過程中,充分保證了系統代碼的良好可讀性、實用性、易擴展性、通用性、便于后期維護、操作方便以及頁面簡潔等特點。關鍵詞:智能排課系統,Java,SpringBoot,Mysql 第6章系統測試第1章緒論1.1研究背景隨著信息技術的飛速發展,各個行業的信息化勢在必行。正所謂科學技術是第一生產力”,科技的進步大大地提高了生產率。然而,在高校這個知識密集的地方,如何才能提高辦學效率,更好地完成教學任務,跟上社會發展步伐,這是一個擺在教學工作者面前的一個迫切的問題。應用信息化來改造傳統的教學管理模式是一個重要途徑。近幾年來,隨著各高校辦公自動化工作的推進,教務管理自動化也被擺上了日程。在教務工作中占有很大比重的一項就是每學期的課程排定工作。由于教工、教室和設備的相對緊張,如何進行合理地安排和分配,從而充分利用教學資源是我們不得不面對的問題。而人工進行排課不僅任務重,效率低,而且易出錯,難于維護,想要排出一張各方面都滿意的課表非常困難。并且隨著高校規模的擴大,手工排課的難度和工作量呈幾何級數增長。1.2研究意義排課是每一個學校必須面對的問題﹐以前各學校的排課都是通過手工排出來了,不僅效率低,而且可變更性差,通常是經過很多次調整后確定的,給教學工作帶來極大的不便。在計算機被廣泛應用的今天﹐我們要充分利用計算機的優勢,不僅大大提高了工作效率,而且提高了排課的可重用性。使排課不再成為各學校的難題。尤其對于復雜的信息管理,計算機能夠充分發揮它的優越性。計算機進行信息管理與信息管理系統的開發密切相關,系統的開發是系統管理的前提。本系統就是為了利用計算機進行排課而設計的。現今,有很多的學校尚未使用計算機進行排課。根據調查得知,他們以前對排課的主要方式是通過手工處理,首先統計教師、班級人數、上課時間,首先進行第一次排課﹐得出一個初稿,再在這個基礎之上進行多次修改,直到滿意為止。這樣看來,缺乏系統,規范的方法。盡管有的學校有計算機,但是尚未用于排課,沒有發揮它的效率﹐資源閑置比較突出,這就是管理信息系統的開發的基本環境。數據處理手工操作,工作量大,出錯率高,出錯后不易更改。基于這此問題,我認為有必要建立一個排課系統,使排課工作規范化,系統化,程序化,避免排課的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的查詢和修改排課情況。1.3研究現狀經過調查,目前現代人的生活節奏加快,生活壓力也在逐漸的增加,網絡的發展給人們帶來的便利,隨著網上排課不斷的增加,越來越多的學校開始加入了網上智能排課的大潮中,但是我國對于智能排課系統信息管理效果低下,而且出錯率也很高。因此大家都在尋找一款更加專業化的智能排課系統。隨著智能排課系統的不斷出現,教師需求不斷增多,智能排課系統也不斷的得到壯大,本系統主要根據教師、教務員和管理員的實際需要,方便教師利用互聯網實現對智能排課系統的了解、對比,同時讓管理者可以通過這個系統對教師實際需求以及各排課信息的所有了解和課表情況進行管理。設計該系統主要目的是為了方便教師可以有一個非常好的平臺體驗,管理員也可以通過該系統進行更加方便的管理操作,實現了之前指定好的計劃。第2章相關技術2.1開發技術本系統前端框架采用了比較流行的漸進式JavaScript框架Vue.js。使用Vue-Router和Vuex實現動態路由和全局狀態管理,Ajax實現前后端通信,ElementUI組件庫使頁面快速成型。后端部分:采用SpringBoot作為開發框架,同時集成MyBatis、Redis等相關技術。2.2Java簡介Java主要采用CORBA技術和安全模型,可以在互聯網應用的數據保護。它還提供了對EJB(EnterpriseJavaBeans)的全面支持,JavaservletAPI,JSP(Javaserverpages),和XML技術。Java語言是一種面向對象的語言,它通過提供最基本的方法來完成指定的任務,開發者只需要知道一些概念就能夠編寫出一些應用程序。Java程序相對較小,其代碼能夠在小機器上運行。Java是一種計算機編程語言,具有封裝、繼承和多態性三個主要特性,廣泛應用于企業Web應用程序開發和移動應用程序開發。Java語言和一般編譯器以及直譯的區別在于,Java首先將源代碼轉換為字節碼,然后將其轉換為JVM的可執行文件,JVM可以在各種不同的JVM上運行。因此,實現了它的跨平臺特性。雖然這使得Java在早期非常緩慢,但是隨著Java的開發,它已經得到了改進。2.3MVVM模式MVVM是Model-View-ViewModel的簡寫。它本質上就是MVC的改進版。MVVM就是將其中的View的狀態和行為抽象化,讓我們將視圖UI和業務邏輯分開。當然這些事ViewModel已經幫我們做了,它可以取出Model的數據同時幫忙處理View中由于需要展示內容而涉及的業務邏輯。微軟的WPF帶來了新的技術體驗,如Silverlight、音頻、視頻、3D、動畫……,這導致了軟件UI層更加細節化、可定制化。同時,在技術層面,WPF也帶來了諸如Binding、DependencyProperty、RoutedEvents、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由來便是MVP(Model-View-Presenter)模式與WPF結合的應用方式時發展演變過來的一種新型架構框架。它立足于原有MVP框架并且把WPF的新特性糅合進去,以應對客戶日益復雜的需求變化。2.4B/S結構B/S(Browser/Server)比前身架構更為省事的架構。它借助Webserver完成數據的傳遞交流。只需要下載瀏覽器作為客戶端,那么工作就達到“瘦身”效果,不需要考慮不停裝軟件的問題。2.5MySQL數據庫Mysql的語言是非結構化的,用戶可以在數據上進行工作。MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要\t"/item/MySQL%E6%95%B0%E6%8D%AE%E5%BA%93/_blank"事務化處理的情況下,MySQL是管理內容最好的選擇。并且因為Mysql的語言和結構比較簡單,但是功能和存儲信息量很強大,所以得到了普遍的應用。Mysql數據庫在編程過程中的作用是很廣泛的,為用戶進行數據查詢帶來了方便。Mysql數據庫的應用因其靈活性強,功能強大,所以在實現某功能時只需要一小段代碼,而不像其他程序需要編寫大段代碼。總體來說,Mysql數據庫的語言相對要簡潔很多。數據流程分析主要就是數據存儲的儲藏室,它是在計算機上進行的,而不是現實中的儲藏室。數據的存放是按固定格式,而不是無序的,其定義就是:長期有固定格式,可以共享的存儲在計算機存儲器上。數據庫管理主要是數據存儲、修改和增加以及數據表的建立。為了保證系統數據的正常運行,一些有能力的處理者可以進行管理而不需要專業的人來處理。數據表的建立,可以對數據表中的數據進行調整,數據的重新組合及重新構造,保證數據的安全性。介于數據庫的功能強大等特點,本系統的開發主要應用了Mysql進行對數據的管理。2.6SpringBoot框架Spring框架是Java平臺上的一種開源應用框架,提供具有控制反轉特性的容器。盡管Spring框架自身對編程模型沒有限制,但其在Java應用中的頻繁使用讓它備受青睞,以至于后來讓它作為EJB(EnterpriseJavaBeans)模型的補充,甚至是替補。Spring框架為開發提供了一系列的解決方案,比如利用控制反轉的核心特性,并通過依賴注入實現控制反轉來實現管理對象生命周期容器化,利用面向切面編程進行聲明式的事務管理,整合多種持久化技術管理數據訪問,提供大量優秀的Web框架方便開發等等。Spring框架具有控制反轉(IOC)特性,IOC旨在方便項目維護和測試,它提供了一種通過Java的反射機制對Java對象進行統一的配置和管理的方法。Spring框架利用容器管理對象的生命周期,容器可以通過掃描XML文件或類上特定Java注解來配置對象,開發者可以通過依賴查找或依賴注入來獲得對象。Spring框架具有面向切面編程(AOP)框架,SpringAOP框架基于代理模式,同時運行時可配置;AOP框架主要針對模塊之間的交叉關注點進行模塊化。Spring框架的AOP框架僅提供基本的AOP特性,雖無法與AspectJ框架相比,但通過與AspectJ的集成,也可以滿足基本需求。Spring框架下的事務管理、遠程訪問等功能均可以通過使用SpringAOP技術實現。Spring的事務管理框架為Java平臺帶來了一種抽象機制,使本地和全局事務以及嵌套事務能夠與保存點一起工作,并且幾乎可以在Java平臺的任何環境中工作。Spring集成多種事務模板,系統可以通過事務模板、XML或Java注解進行事務配置,并且事務框架集成了消息傳遞和緩存等功能。Spring的數據訪問框架解決了開發人員在應用程序中使用數據庫時遇到的常見困難。它不僅對Java:JDBC、iBATS/MyBATIs、Hibernate、Java數據對象(JDO)、ApacheOJB和ApacheCayne等所有流行的數據訪問框架中提供支持,同時還可以與Spring的事務管理一起使用,為數據訪問提供了靈活的抽象。Spring框架最初是沒有打算構建一個自己的WebMVC框架,其開發人員在開發過程中認為現有的StrutsWeb框架的呈現層和請求處理層之間以及請求處理層和模型之間的分離不夠,于是創建了SpringMVC。第3章系統分析3.1需求分析智能排課系統主要是主要是借助計算機,對專業管理、班級管理、選課信息、課程信息、排課管理、成績管理等進行管理,更好存儲所有數據信息及快速方便的檢索功能。對系統的各個模塊是通過許多今天的發達系統做出合理的分析來確定考慮用戶的可操作性,遵循開發的系統優化的原則,經過全面的調查和研究。系統所要實現的功能分析,對于現在網絡方便的管理,系統要實現用戶可以直接在平臺上進行查看所有數據信息,根據需求可以進行在線添加,刪除或修改信息,這樣既能節省時間,不用再像傳統的方式耽誤時間,真的很難去滿足用戶的各種需求。所以智能排課系統的開發不僅僅是能滿足用戶的需求,還能提高管理員的工作效率,減少原有不必要的工作量。3.2系統可行性分析3.2.1技術可行性該系統在Windows操作系統中進行開發,并且目前PC機的性能已經可以勝任普通網站的web服務器。系統開發所使用的技術也都是自身所具有的,也是當下廣泛應用的技術之一。系統的開發環境和配置都是可以自行安裝的,系統使用JSP開發工具,使用比較成熟的Mysql數據庫進行對系統前臺及后臺的數據交互,根據技術語言對數據庫,結合需求進行修改維護,可以使得網站運行更具有穩定性和安全性,從而完成實現網站的開發。(1)硬件可行性分析智能排課系統及信息分析的設計對于所使用的計算機沒有什么硬性的要求,計算機只要可以正常的使用進行代碼的編寫及頁面設計就可行,主要是對于服務器有些要求,對于平臺搭建完成要上傳的服務器是有一定的要求的,服務器必須選擇安全性比較高的,然后就是在打開網站必須順暢,不能停頓太長時間;性價比高;安全性高。(2)軟件可行性分析開發整個系統使用的是云計算,流量的可擴展性和基于流量的智能調整云計算的優點就是流量的可擴展性和基于流量的智能調整,保障系統的安全及數據信息的及時備份。因此,我們從兩個方面進行了可行性研究,可以看出系統的開發沒有問題。3.2.2經濟可行性在智能排課系統開發之前所做的市場調研及相關的管理系統,都是沒有任何費用的,都是通過開發者自己的努力,所有的工作的都是自己親力親為,在碰到自己比較難以解決的問題,大多是通過同學和指導老師的幫助進行相關信息的解決,所以對于智能排課系統的開發在經濟上是完全可行的,沒有任何費用支出的。使用比較成熟的技術,系統是基于JSP的開發,采用Mysql數據庫。所以系統在開發人力、財力要求不高,具有經濟可行性。3.2.3操作可行性可操作性主要是對智能排課系統設計完成后,用戶的使用體驗度,以及管理員可以通過系統隨時管理相關的數據信息,并且對于管理員、學生、教師三個用戶角色,都可以簡單明了的進入到自己的系統界面,通過界面導航菜單可以簡單明了地操作功能模塊,方便用戶信息的操作需求和管理員管理數據信息,對于系統的操作,不需要專業人員都可以直接進行功能模塊的操作管理,所以在系統的可操作性是完全可以的。本系統的操作使用的也是界面窗口進行登錄,所以操作人員只要會簡單的電腦操作就完全可以的。3.3項目設計目標與原則1、關于智能排課系統的基本要求(1)功能要求:首頁、個人資料、輪播圖管理、公告消息管理、系統用戶(管理員、學生、教師)資源管理(校園資訊、資訊分類)模塊管理(學生信息、院系管理、專業管理、班級管理、課程信息、教室管理、選課信息、課程測試、提交測試、成績錄入、排課管理、課表管理)等功能模塊。(2)性能:在不同操作系統上均能無差錯實現在不同類型的用戶登入相應界面后能不出差錯、方便地進行預期操作。(3)安全與保密要求:用戶都必須通過身份驗證才能進入系統,并且用戶的權限也需要根據用戶的類型進行限定。(4)環境要求:支持多種平臺,可在Windows系列、Vista系統等多種操作系統下使用。2、開發目標智能排課系統的主要開發目標如下:(1)實現管理系統信息關系的系統化、規范化和自動化;(2)減少維護人員的工作量以及實現用戶對信息的控制和管理。(3)方便查詢信息及管理信息等;(4)通過網絡操作,改善處理問題的效率,提高操作人員利用率;(5)考慮到用戶多樣性特點,要求界面簡單,操作簡便。3、設計原則本系統采用Java技術,Mysql數據庫開發,充分保證了系統穩定性、完整性。智能排課系統的設計與實現的設計思想如下:操作簡單方便、系統界面安全良、簡單明了的頁面布局、方便查詢相關信息。2、即時可見:對智能排課系統信息的處理將可以實時查詢到,從而實現“即時發布、即時見效”的系統功能。3、功能的完善性:擁有首頁、個人資料、輪播圖管理、公告消息管理、系統用戶(管理員、學生、教師)資源管理(校園資訊、資訊分類)模塊管理(學生信息、院系管理、專業管理、班級管理、課程信息、教室管理、選課信息、課程測試、提交測試、成績錄入、排課管理、課表管理)等功能的修改維護操作。3.4系統流程分析3.4.1操作流程系統登錄流程圖,如圖所示:圖3-1登錄流程圖3.4.2添加信息流程添加信息流程圖,如圖所示:圖3-2添加信息流程圖3.4.3刪除信息流程刪除信息流程圖,如圖所示:圖3-3刪除信息流程圖第4章系統設計4.1系統體系結構本系統選擇B/S結構(Browser/Server,瀏覽器/服務器結構)和基于Web服務兩種模式。適合在互聯網上進行操作,只要用戶能連網,任何時間、任何地點都可以進行系統的操作使用。系統工作原理圖如圖4-1所示:圖4-1系統工作原理圖4.2系統結構設計整個系統是由多個功能模塊組合而成的,要將所有的功能模塊都一一列舉出來,然后進行逐個的功能設計,使得每一個模塊都有相對應的功能設計,然后進行系統整體的設計。本系統結構圖如圖4-2所示。圖4-2系統功能結構圖4.3開發流程設計系統流程的分析是通過調查系統所涉及問題的識別、可行性、可操作性、系統分析處理能力等具體環節來調節、整理系統的設計方案以確保系統能達到理想的狀態。這些操作都要從注冊、登錄處著眼進行一系列的流程測試保證數據庫的完整,從而把控系統所涉及信息管理的安全、保證信息輸入、輸出正常轉換。然后,通過實際操作完成流程圖的繪制工作。智能排課系統的開發對管理模塊和系統使用的數據庫進行分析,編寫代碼,系統測試,如圖4-4所示。圖4-4開發系統流程圖4.4數據庫設計原則學習編程,我們都知道數據庫設計是基于需要設計的系統功能,我們需要建立一個數據庫關系模型,用于存儲數據信息,這樣當我們在程序中時,就沒有必要為程序頁面添加數據,從而提高系統的效率。數據庫存儲了很多信息,可以說是信息管理系統的核心和基礎,數據庫還提供了添加、刪除、修改和檢查,使系統能夠快速找到自己想要的信息,而不是在程序代碼中找到。數據庫中信息表的每個部分根據一定的關系精確地組合,排列和組合成數據表。通過智能排課系統的功能進行規劃分成幾個實體信息,實體信息將通過ER圖進行說明,本系統的主要實體圖如下:管理員信息屬性圖如圖4-5所示。圖4-5管理員信息實體屬性圖系統的E-R圖如下圖所示:圖4-6系統E-R圖4.5數據表將數據庫概念設計的E-R圖轉換為關系數據庫。在關系數據庫中,數據關系由數據表組成,但是表的結構表現在表的字段上。表access_token(登陸訪問時長)編號名稱數據類型長度小數位允許空值主鍵默認值說明1token_idint100NY臨時訪問牌ID2tokenvarchar640YN臨時訪問牌3infotext655350YN4maxageint100NN2最大壽命:默認2小時5create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:6update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:7user_idint100NN0用戶編號:表article(文章:用于內容管理系統的文章)編號名稱數據類型長度小數位允許空值主鍵默認值說明1article_idmediumint80NY文章id:[0,8388607]2titlevarchar1250NY標題:[0,125]用于文章和html的title標簽中3typevarchar640NN0文章分類:[0,1000]用來搜索指定類型的文章4hitsint100NN0點擊數:[0,1000000000]訪問這篇文章的人次5praise_lenint100NN0點贊數6create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:7update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:8sourcevarchar2550YN來源:[0,255]文章的出處9urlvarchar2550YN來源地址:[0,255]用于跳轉到發布該文章的網站10tagvarchar2550YN標簽:[0,255]用于標注文章所屬相關內容,多個標簽用空格隔開11contentlongtext21474836470YN正文:文章的主體內容12imgvarchar2550YN封面圖13descriptiontext655350YN文章描述表article_type(文章分類)編號名稱數據類型長度小數位允許空值主鍵默認值說明1type_idsmallint50NY分類ID:[0,10000]2displaysmallint50NN100顯示順序:[0,1000]決定分類顯示的先后順序3namevarchar160NN分類名稱:[2,16]4father_idsmallint50NN0上級分類ID:[0,32767]5descriptionvarchar2550YN描述:[0,255]描述該分類的作用6icontext655350YN分類圖標:7urlvarchar2550YN外鏈地址:[0,255]如果該分類是跳轉到其他網站的情況下,就在該URL上設置8create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:9update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:表auth(用戶權限管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1auth_idint100NY授權ID:2user_groupvarchar640YN用戶組:3mod_namevarchar640YN模塊名:4table_namevarchar640YN表名:5page_titlevarchar2550YN頁面標題:6pathvarchar2550YN路由路徑:7positionvarchar320YN位置:8modevarchar320NN_blank跳轉方式:9addtinyint30NN1是否可增加:10deltinyint30NN1是否可刪除:11settinyint30NN1是否可修改:12gettinyint30NN1是否可查看:13field_addtext655350YN添加字段:14field_settext655350YN修改字段:15field_gettext655350YN查詢字段:16table_nav_namevarchar5000YN跨表導航名稱:17table_navvarchar5000YN跨表導航:18optiontext655350YN配置:19create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:20update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:表classroom_management(教室管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1classroom_management_idint100NY教室管理ID2classroom_namevarchar640YN教室名稱3floorvarchar640YN所在樓層4recommendint100NN0智能推薦5create_timedatetime190NNCURRENT_TIMESTAMP創建時間6update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表class_management(班級管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1class_management_idint100NY班級管理ID2class_namevarchar640YN班級名稱3recommendint100NN0智能推薦4create_timedatetime190NNCURRENT_TIMESTAMP創建時間5update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表collect(收藏)編號名稱數據類型長度小數位允許空值主鍵默認值說明1collect_idint100NY收藏ID:2user_idint100NN0收藏人ID:3source_tablevarchar2550YN來源表:4source_fieldvarchar2550YN來源字段:5source_idint100NN0來源ID:6titlevarchar2550YN標題:7imgvarchar2550YN封面:8create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:9update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:表comment(評論)編號名稱數據類型長度小數位允許空值主鍵默認值說明1comment_idint100NY評論ID:2user_idint100NN0評論人ID:3reply_to_idint100NN0回復評論ID:空為04contentlongtext21474836470YN內容:5nicknamevarchar2550YN昵稱:6avatarvarchar2550YN頭像地址:[0,255]7create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:8update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:9source_tablevarchar2550YN來源表:10source_fieldvarchar2550YN來源字段:11source_idint100NN0來源ID:表course_information(課程信息)編號名稱數據類型長度小數位允許空值主鍵默認值說明1course_information_idint100NY課程信息ID2course_novarchar640YN課程編號3course_namevarchar640YN課程名稱4covervarchar2550YN封面5class_locationvarchar640YN上課地點6start_timedatetime190YN開始時間7end_timedatetime190YN結束時間8teacher_noint100YN0教師編號9full_namevarchar640YN姓名10detailslongtext21474836470YN詳情介紹11hitsint100NN0點擊數12praise_lenint100NN0點贊數13recommendint100NN0智能推薦14create_timedatetime190NNCURRENT_TIMESTAMP創建時間15update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表course_scheduling_management(排課管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1course_scheduling_management_idint100NY排課管理ID2titlevarchar640YN標題3course_namevarchar640YN課程名稱4class_locationvarchar640YN上課地點5start_timedatetime190YN開始時間6end_timedatetime190YN結束時間7teacher_noint100YN0教師編號8full_namevarchar640YN姓名9recommendint100NN0智能推薦10create_timedatetime190NNCURRENT_TIMESTAMP創建時間11update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表course_selection_information(選課信息)編號名稱數據類型長度小數位允許空值主鍵默認值說明1course_selection_information_idint100NY選課信息ID2course_namevarchar640YN課程名稱3class_locationvarchar640YN上課地點4start_timevarchar640YN開始時間5end_timevarchar640YN結束時間6teacher_noint100YN0教師編號7student_noint100YN0學生學號8student_namevarchar640YN學生姓名9course_selection_timedate100YN選課時間10annotation_notesvarchar640YN標注說明11recommendint100NN0智能推薦12create_timedatetime190NNCURRENT_TIMESTAMP創建時間13update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表course_test(課程測試)編號名稱數據類型長度小數位允許空值主鍵默認值說明1course_test_idint100NY課程測試ID2course_namevarchar640YN課程名稱3teacher_noint100YN0教師編號4student_noint100YN0學生學號5student_namevarchar640YN學生姓名6test_namevarchar640YN測試名稱7release_timedate100YN發布時間8test_contentvarchar2550YN測試內容9description_of_requirementstext655350YN要求說明10recommendint100NN0智能推薦11create_timedatetime190NNCURRENT_TIMESTAMP創建時間12update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表department_management(院系管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1department_management_idint100NY院系管理ID2name_of_departmentvarchar640YN院系名稱3person_in_chargevarchar640YN負責人4detailstext655350YN詳情介紹5recommendint100NN0智能推薦6create_timedatetime190NNCURRENT_TIMESTAMP創建時間7update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表hits(用戶點擊)編號名稱數據類型長度小數位允許空值主鍵默認值說明1hits_idint100NY點贊ID:2user_idint100NN0點贊人:3create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:4update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:5source_tablevarchar2550YN來源表:6source_fieldvarchar2550YN來源字段:7source_idint100NN0來源ID:表notice(公告)編號名稱數據類型長度小數位允許空值主鍵默認值說明1notice_idmediumint80NY公告id:2titlevarchar1250NN標題:3contentlongtext21474836470YN正文:4create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:5update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:表praise(點贊)編號名稱數據類型長度小數位允許空值主鍵默認值說明1praise_idint100NY點贊ID:2user_idint100NN0點贊人:3create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:4update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:5source_tablevarchar2550YN來源表:6source_fieldvarchar2550YN來源字段:7source_idint100NN0來源ID:8statusbit10NN1點贊狀態:1為點贊,0已取消表professional_management(專業管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1professional_management_idint100NY專業管理ID2major_namevarchar640YN專業名稱3recommendint100NN0智能推薦4create_timedatetime190NNCURRENT_TIMESTAMP創建時間5update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表schedule_management(課表管理)編號名稱數據類型長度小數位允許空值主鍵默認值說明1schedule_management_idint100NY課表管理ID2titlevarchar640YN標題3datedate100YN日期4the_first_classvarchar640YN第一節課5the_second_classvarchar640YN第二節課6the_third_classvarchar640YN第三節課7the_fourth_classvarchar640YN第四節課8section_5varchar640YN第五節課9section_6varchar640YN第六節課10section_7varchar640YN第七節課11section_8varchar640YN第八節課12recommendint100NN0智能推薦13create_timedatetime190NNCURRENT_TIMESTAMP創建時間14update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表score_entry(成績錄入)編號名稱數據類型長度小數位允許空值主鍵默認值說明1score_entry_idint100NY成績錄入ID2course_namevarchar640YN課程名稱3teacher_noint100YN0教師編號4student_noint100YN0學生學號5student_namevarchar640YN學生姓名6test_namevarchar640YN測試名稱7release_timevarchar640YN發布時間8test_scoreint100YN0測試得分9annotation_notesvarchar640YN標注說明10recommendint100NN0智能推薦11create_timedatetime190NNCURRENT_TIMESTAMP創建時間12update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表slides(輪播圖)編號名稱數據類型長度小數位允許空值主鍵默認值說明1slides_idint100NY輪播圖ID:2titlevarchar640YN標題:3contentvarchar2550YN內容:4urlvarchar2550YN鏈接:5imgvarchar2550YN輪播圖:6hitsint100NN0點擊量:7create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:8update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:表student(學生)編號名稱數據類型長度小數位允許空值主鍵默認值說明1student_idint100NY學生ID2student_novarchar640NN學生編號3student_namevarchar640YN學生姓名4gendervarchar640YN性別5examine_statevarchar160NN已通過審核狀態6recommendint100NN0智能推薦7user_idint100NN0用戶ID8create_timedatetime190NNCURRENT_TIMESTAMP創建時間9update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表student_information(學生信息)編號名稱數據類型長度小數位允許空值主鍵默認值說明1student_information_idint100NY學生信息ID2student_noint100YN0學生編號3student_namevarchar640YN學生姓名4gendervarchar640YN性別5name_of_departmentvarchar640YN院系名稱6majorvarchar640YN學習專業7class_namevarchar640YN班級名稱8recommendint100NN0智能推薦9create_timedatetime190NNCURRENT_TIMESTAMP創建時間10update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表submit_test(提交測試)編號名稱數據類型長度小數位允許空值主鍵默認值說明1submit_test_idint100NY提交測試ID2course_namevarchar640YN課程名稱3teacher_noint100YN0教師編號4student_noint100YN0學生學號5student_namevarchar640YN學生姓名6test_namevarchar640YN測試名稱7release_timevarchar640YN發布時間8submission_timedate100YN提交時間9related_attachmentsvarchar2550YN相關附件10remarksvarchar640YN備注11recommendint100NN0智能推薦12create_timedatetime190NNCURRENT_TIMESTAMP創建時間13update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表teacher(教師)編號名稱數據類型長度小數位允許空值主鍵默認值說明1teacher_idint100NY教師ID2teacher_novarchar640NN教師編號3full_namevarchar640YN姓名4gendervarchar640YN性別5name_of_departmentvarchar640YN院系名稱6lecturing_specialtyvarchar640YN授課專業7examine_statevarchar160NN已通過審核狀態8recommendint100NN0智能推薦9user_idint100NN0用戶ID10create_timedatetime190NNCURRENT_TIMESTAMP創建時間11update_timetimestamp190NNCURRENT_TIMESTAMP更新時間表upload(文件上傳)編號名稱數據類型長度小數位允許空值主鍵默認值說明1upload_idint100NY上傳ID2namevarchar640YN文件名3pathvarchar2550YN訪問路徑4filevarchar2550YN文件路徑5displayvarchar2550YN顯示順序6father_idint100YN0父級ID7dirvarchar2550YN文件夾8typevarchar320YN文件類型表user(用戶賬戶:用于保存用戶登錄信息)編號名稱數據類型長度小數位允許空值主鍵默認值說明1user_idmediumint80NY用戶ID:[0,8388607]用戶獲取其他與用戶相關的數據2statesmallint50NN1賬戶狀態:[0,10](1可用|2異常|3已凍結|4已注銷)3user_groupvarchar320YN所在用戶組:[0,32767]決定用戶身份和權限4login_timetimestamp190NNCURRENT_TIMESTAMP上次登錄時間:5phonevarchar110YN手機號碼:[0,11]用戶的手機號碼,用于找回密碼時或登錄時6phone_statesmallint50NN0手機認證:[0,1](0未認證|1審核中|2已認證)7usernamevarchar160NN用戶名:[0,16]用戶登錄時所用的賬戶名稱8nicknamevarchar160YN昵稱:[0,16]9passwordvarchar640NN密碼:[0,32]用戶登錄所需的密碼,由6-16位數字或英文組成10emailvarchar640YN郵箱:[0,64]用戶的郵箱,用于找回密碼時或登錄時11email_statesmallint50NN0郵箱認證:[0,1](0未認證|1審核中|2已認證)12avatarvarchar2550YN頭像地址:[0,255]13create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:表user_group(用戶組:用于用戶前端身份和鑒權)編號名稱數據類型長度小數位允許空值主鍵默認值說明1group_idmediumint80NY用戶組ID:[0,8388607]2displaysmallint50NN100顯示順序:[0,1000]3namevarchar160NN名稱:[0,16]4descriptionvarchar2550YN描述:[0,255]描述該用戶組的特點或權限范圍5source_tablevarchar2550YN來源表:6source_fieldvarchar2550YN來源字段:7source_idint100NN0來源ID:8registersmallint50YN0注冊位置:9create_timetimestamp190NNCURRENT_TIMESTAMP創建時間:10update_timetimestamp190NNCURRENT_TIMESTAMP更新時間:第5章系統詳細設計5.1管理員功能模塊管理員登錄智能排課系統,在登錄頁面輸入用戶名、密碼、圖片驗證等進行登錄,如圖5-1所示。圖5-1管理員登錄界面圖管理員進入系統后臺可以查看:后臺首頁、個人資料、輪播圖管理、公告消息管理、系統用戶(管理員、學生、教師)資源管理(校園資訊、資訊分類)模塊管理(學生信息、院系管理、專業管理、班級管理、課程信息、教室管理、選課信息、課程測試、提交測試、成績錄入、排課管理、課表管理)等功能模塊。還可進行相應的操作,如圖5-2所示。圖5-2管理員功能界面圖系統用戶,在此頁面可以查看用戶信息,還可在該頁面對用戶進行重置、添加和刪除等操作。以教師用戶為例,如圖5-3,5-4所示。圖5-3教師用戶管理界面圖圖5-4添加用戶界面圖輪播圖管理:可以查看輪播圖信息的標題,封面圖,內容等詳細描述等信息。可以進行查詢、重置、刪除、添加等操作,如圖5-5所示。圖5-5輪播圖管理界面圖圖5-6輪播圖信息添加界面圖公告信息管理:可以查看公告信息的標題,內容等詳細描述等信息。可以進行查詢、重置、刪除、添加等操作,如圖5-7,5-8所示。圖5-7公告信息管理界面圖圖5-8公告信息添加界面圖校園資訊:可以通過搜索標簽、標題、分類進行查看校園資訊,可以進行查詢、重置、刪除、添加等操作,如圖5-9,5-10所示。圖5-9校園資訊管理界面圖圖5-10校園資訊添加界面圖課程信息:可以通過搜索課程名稱、課程名稱進行查看課程編號、課程名稱、封面、上課地點、教師編號、姓名等詳細信息。并可以進行查詢、重置、刪除、添加等操作,如圖5-11,5-12所示。圖5-11課程信息管理界面圖圖5-12課程信息添加界面圖5.2學生用戶功能模塊學生用戶登錄智能排課系統,需先注冊,在登錄頁面輸入用戶名、密碼進行登錄,如圖5-13,5-14所示。圖5-13學生用戶注冊界面圖圖5-14學生用戶登錄界面圖進入系統可以查看:前臺首頁,公告消息,校園喜訊,課程信息,我的(我的賬戶、我的收藏)后臺首頁,模塊管理(選課信息、學生信息、課程測試、提交測試、成績查詢、課表信息),個人管理。等功能,還可進行相應的操作,如圖5-15所示。圖5-15學生用戶功能界面圖我的,在該頁面可以查看我的賬戶、我的收藏、個人中心等信息,在我的賬戶里可以對個人資料、密碼、頭像等信息進行修改,如圖5-16,5-17所示。圖5-16我的賬戶界面圖圖5-17個人資料修改界面圖課程信息,在該頁面可以搜索查看課程編號、課程名稱、上課地點、開始時間、結束時間、教師編號等詳細信息,如圖5-18所示。圖5-18課程信息界面圖校園資訊:在該頁面可以通過篩選搜索校園資訊信息,對喜歡的資訊可進行收藏、點贊、評論等操作,如圖5-195-20所示。圖5-19校園資訊界面圖圖5-20校園資訊詳情界面圖5.3教師用戶功能模塊教師用戶進入系統后臺可以查看:后臺首頁,模塊管理(學生信息、課程信息、選課信息、課程測試、提交測試、成績錄入、排課管理、課表管理),個人中心等功能,還可進行相應的操作,如圖5-21所示。圖5-21教師登錄界面圖圖5-22教師功能界面圖第6章系統測試6.1系統測試的目的程序設計不能保證沒有錯誤,這是一個開發過程,在錯誤或錯誤的過程中都是難以避免的。雖然這是不可避免的,但我們不能使這些錯誤始終存在于系統中,錯誤可能會造成無法估量的后果,如系統崩潰,安全信息泄露,系統無法正常啟動等,為了避免這些問題,我們需要測試程序,再測試過程中發現問題,并糾正它們,從而使系統更長時間穩定成熟。本章的作用是發現這些問題,并對其進行修改,雖然耗時費力,但對于長期使用而言是非常重要和必要系統的開發。軟件在設計后必須進行測試,調試過程中使用的方法是軟件測試方法。在開發新軟件時,系統測試是檢查軟件是否合格的關鍵步驟,以及是否符合設計目標的參考。測試主要是查看軟件中數據的準確性,正確的操作與否,以及操作的結果,還有哪些方面需要改進。智能排課系統的實現,對于系統中功能模塊的實現及操作都必須通過測試進行來評判系統是否可以準確的實現。在智能排課系統正式上傳使用之前必須做的一步就是系統測試,對于測試發現的錯誤及時修改處理,保證系統準確無誤的供給用戶使用。6.2系統測試方法在對智能排課系統進行測試的時候在找到問題的情況下必須在第一時間找到解決問題的辦法,不要存在僥幸的心理,這樣才能讓智能排課系統開發的質量可以過關,并且開發的周期會大大縮短,還有就是在測試時,不要出現重復性的錯誤,遇到一個錯誤問題,要將整個智能排課系統開發所牽扯的該問題都必須一一解決,提高智能排課系統平臺的安全性、穩定性。白盒測試與黑盒測試是測試中比較常用的兩種方法。①結構測試俗稱白盒測試:這種測試是在對程序的處理過程與結構都有詳盡諒解的前提下,順從程序內部的邏輯而完成的系統測試,以確定系統中所有的通路都能夠遵照設計要求正常工作,不出現任何偏差。②功能測試又成黑盒測試:主要是針對程序功能能夠按照設計正常實現的一種檢測,在程序接口處進行,檢測程序手法數據是否正常,與外部信息的交換是否完整。6.3功能測試用戶登錄測試:模塊名稱測試用例預期結果實際結果是否通過登錄模塊用戶名:admin密碼:123彈出錯誤提示,提示密碼錯誤彈出錯誤提示,提示密碼錯誤通過登錄模塊用戶名:123密碼:admin彈出錯誤提示,提示用戶名錯誤彈出錯誤提示,提示用戶名錯誤通過登錄模塊用戶名:admin密碼:admin管理員登錄成功管理員登錄成功通過修改密碼測試:模塊名稱測試用例預期結果實際結果是否通過修改密碼模塊原密碼:666新密碼:123確認密碼:123彈出錯誤提示,提示原密碼錯誤彈出錯誤提示,提示原密碼錯誤通過修改密碼模塊原密碼:admin新密碼:123確認密碼:333彈出錯誤提示,提示確認密碼不一致彈出錯誤提示,提示確認密碼不一致通過修改密碼模塊原密碼:admin新密碼:123確認密碼:123密碼修改成功密碼修改成功通過通過對功能的測試,智能排課系統的基本功能都是可行的,不管是系統里面的功能,還是界面的設計都是可值得推廣宣傳的。
結論此時項目已經完成,即使實施的時間不是很長,但是這個過程中需要準備很長的一段時間去對系統設計開發所相關技術進行學習。在學習的過程中,我逐漸認識得到了我自身存在的一些不足。對于一些控制是必要的應用技能,能夠理解,整個過程中僅僅是一個掌握了常用的性能和控制方法,我覺得挺不容易的。從該系統中,系統的分析和設計的調查數據,并且已經經歷了幾個月,并努力幾個月,該系統已經完成。很顯然,該系統仍有很多不成熟的地方,在系統設計過程中有許多技術缺陷存在。在設計的過程中也涉及到了很多自己無法解決的問題,主要通過咨詢老師解決這些問題,對于畢業設計的圓滿完成,需要感謝老師們的指導。系統的開發環境和配置都是可以自行安裝的,系統使用Java開發工具,使用比較成熟的Mysql數據庫進行對系統前臺及后臺的數據交互,根據技術語言對數據庫,結合需求進行修改維護,可以使得系統運行更具有穩定性和安全性,從而完成實現系統的開發。回顧畢業設計的整個過程,既付出汗水也收
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 拓片直播測試題及答案
- 保險消保培訓
- 腫瘤介入治療健康宣教
- 支原體肺炎診療與防控培訓
- 語言教育中的小羊與狼故事應用
- 6S管理內容培訓
- 腫瘤科病人飲食
- 2025年中國磨砂皂行業市場全景分析及前景機遇研判報告
- 中醫內科學:消渴診治要點解析
- 團餐服務流程及規范培訓
- 浙江省強基聯盟學考模擬2024-2025學年高二下學期6月學考模擬地理試題(含答案)
- 中國美術學院非教學崗位招聘筆試真題2024
- 人形機器人深度研究系列八:諧波減速器:差齒傳動持續進化
- 公立醫院風險評估報告
- 腫瘤婦科進修匯報
- 麻醉意外與并發癥處理規范與流程
- 信息技術的前沿動態的試題及答案
- 參股投資合作協議書
- 2025年廣東省深圳市南山區多校聯考中考英語二模試卷
- 2025至2030中國物理氣相沉積(PVD)設備行業行情監測與發展動向追蹤報告
- 智能化設備與造價咨詢合同
評論
0/150
提交評論