(附源码)ssm教务系统网站 毕业设计290915
ssm 教務(wù)系統(tǒng)網(wǎng)站
摘 要
隨著互聯(lián)網(wǎng)趨勢的到來,各行各業(yè)都在考慮利用互聯(lián)網(wǎng)將自己推廣出去,最好方式就是建立自己的互聯(lián)網(wǎng)系統(tǒng),并對其進(jìn)行維護(hù)和管理。在現(xiàn)實(shí)運(yùn)用中,應(yīng)用軟件的工作規(guī)則和開發(fā)步驟,采用Java技術(shù)建設(shè)教務(wù)系統(tǒng)網(wǎng)站。
本設(shè)計(jì)主要實(shí)現(xiàn)集人性化、高效率、便捷等優(yōu)點(diǎn)于一身的教務(wù)系統(tǒng)網(wǎng)站,完成首頁、輪播圖、公告欄、管理員、論壇列表、論壇分類列表、課程資訊、課程資訊分類、學(xué)生用戶、教師用戶、課程信息、課程評價(jià)、課程推薦等功能模塊。系統(tǒng)通過瀏覽器與服務(wù)器進(jìn)行通信,實(shí)現(xiàn)數(shù)據(jù)的交互與變更。只需通過一臺電腦,動動手指就可以操作系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)通信管理。整個(gè)系統(tǒng)的設(shè)計(jì)過程都充分考慮了數(shù)據(jù)的安全、穩(wěn)定及可靠等問題,而且操作過程簡單。本系統(tǒng)通過科學(xué)的管理方式、便捷的服務(wù)提高了工作效率,減少了數(shù)據(jù)存儲上的錯(cuò)誤和遺漏。
教務(wù)系統(tǒng)網(wǎng)站使用Java語言,使用ssm 技術(shù)開發(fā),數(shù)據(jù)方面主要采用的是微軟的MySQL關(guān)系型數(shù)據(jù)庫來作為數(shù)據(jù)存儲媒介完成系統(tǒng)的開發(fā)。
關(guān)鍵詞:教務(wù)系統(tǒng)網(wǎng)站;Java語言;ssm 框架;mysql
SSM educational administration system website
Abstract
With the advent of the Internet trend, all walks of life are considering using the Internet to promote themselves. The best way is to establish their own Internet system and maintain and manage it. In practical application, according to the working rules and development steps of application software, Java technology is used to build the website of educational administration system.
This design mainly realizes the educational administration system website with the advantages of humanization, high efficiency and convenience, and completes the functional modules such as home page, rotation map, bulletin board, administrator, forum list, forum classification list, course information, course information classification, student users, teacher users, course information, course evaluation, course recommendation and so on. The system communicates with the server through the browser to realize the interaction and change of data. You can operate the system and realize data communication management by moving your fingers through a computer. The safety, stability and reliability of data are fully considered in the design process of the whole system, and the operation process is simple. Through scientific management and convenient service, the system improves work efficiency and reduces errors and omissions in data storage.
The website of educational administration system uses Java language and SSM technology. In terms of data, Microsoft MySQL relational database is mainly used as the data storage medium to complete the development of the system.
Key words: educational administration system website; Java language; SSM framework; mysql
目錄
第1章 緒論 1
第2章 相關(guān)技術(shù)介紹 3
第3章 系統(tǒng)分析 6
第4章 系統(tǒng)設(shè)計(jì) 12
第5章 系統(tǒng)實(shí)現(xiàn) 18
第6章 系統(tǒng)測試 25
總結(jié) 28
致謝 29
參考文獻(xiàn) 30
第1章 緒論
研究背景
隨著現(xiàn)代計(jì)算機(jī)科學(xué)的迅速發(fā)展,信息和通訊技術(shù)的應(yīng)用與推廣,各校教學(xué)管理模式正在發(fā)生著巨大的變革。學(xué)校教學(xué)管理工作信息化、數(shù)字化的教育與實(shí)踐也越來越受到重視。學(xué)生的選課工作與學(xué)生的學(xué)業(yè)和老師的教學(xué)工作息息相關(guān),也是高校信息管理的重要組成部分。全校性選修課的目的在于擴(kuò)大學(xué)生知識面,加強(qiáng)學(xué)生素質(zhì)教育,培養(yǎng)復(fù)合型高級人才,具有不可替代的重要性。
當(dāng)今社會對教育水平和教學(xué)管理軟硬件的要求日益提高,這對一個(gè)學(xué)校能夠具有一整套完善的教學(xué)管理軟件提出了更多的要求。而要實(shí)現(xiàn)這一功能,就要求學(xué)校管理者配備一套高效的教務(wù)系統(tǒng)網(wǎng)站,以便在學(xué)校內(nèi)實(shí)施良好的一整套完善的管理且以最快地速度響應(yīng)教師和學(xué)生的需求,及時(shí)為他們提供服務(wù),為他們提供一個(gè)高效、便捷的環(huán)境。高校學(xué)生選課系統(tǒng)是校園網(wǎng)絡(luò)中一個(gè)重要的應(yīng)用系統(tǒng),它大大改善了學(xué)校教學(xué)、科研與管理的基礎(chǔ)環(huán)境,在一定程度上反映出學(xué)校管理現(xiàn)代化的水平。
開發(fā)意義
從學(xué)生的角度來說,由于學(xué)校教學(xué)制度的改革,現(xiàn)在大部分高等院校開始實(shí)行的是學(xué)生的自主選課模式。傳統(tǒng)的教學(xué)模式(學(xué)生按照學(xué)校安排好的課程上課)已經(jīng)不能適應(yīng)新型的教學(xué)模式,如果仍然通過紙上的方式選課,一方面浪費(fèi)了大量的人力、物力資源,另一方面浪費(fèi)時(shí)間以及會在人為的統(tǒng)計(jì)匯總過程中出現(xiàn)可避免的差錯(cuò)等情況。隨著高校人數(shù)的增多,上述弊端會越來越多的暴露出來。如果利用網(wǎng)絡(luò)進(jìn)行選課,學(xué)生只要在計(jì)算機(jī)前輸入自己的個(gè)人選課信息即可完成教務(wù)部門原來幾倍的作業(yè)量。從教師的角度來說,教師提出代課申請完成課程發(fā)布的工作更加容易,得到教學(xué)的信息更加快捷,因此通過選課系統(tǒng)可以大幅度的減少教師的工作量,方便了教學(xué)工作。
開發(fā)現(xiàn)狀
國外的教學(xué)科研軟件與國內(nèi)相比開發(fā)的早而且比較成熟。早在七十年代末,美國就建成了NSFNET(國家科學(xué)基金網(wǎng)),其課題的申報(bào)及課題的進(jìn)展情況匯報(bào)都在網(wǎng)上進(jìn)行。其網(wǎng)上學(xué)生在線選課系統(tǒng)也十分完善,世界各地的學(xué)生可以坐在家里通過互聯(lián)網(wǎng)完成入學(xué)報(bào)名、選課、考試、畢業(yè)論文、取得學(xué)位這一學(xué)習(xí)生活的全過程。目前,國際上已具規(guī)模的遠(yuǎn)程教育學(xué)校就有數(shù)百所之多,網(wǎng)上教育正在各地發(fā)揮著巨大的作用,為世界各國培養(yǎng)出大批人才。所有這些都表明,基于Internet的校園網(wǎng)的應(yīng)用已深入到校園內(nèi)的各個(gè)方面。
我國不少高校都實(shí)行了學(xué)分制,它的核心是允許學(xué)生自由選課,即把學(xué)習(xí)的自主權(quán)交給學(xué)生。在這里,學(xué)生選課時(shí)的制約因素比較復(fù)雜,工作量也很大,而且往往需要在較短的時(shí)間內(nèi)完成。運(yùn)用計(jì)算機(jī)輔助選課,即能實(shí)時(shí)地對大量選課數(shù)據(jù)進(jìn)行檢驗(yàn)和統(tǒng)計(jì),十分方便地輸出選課結(jié)果,同時(shí)也避免了人工處理時(shí)容易產(chǎn)生的錯(cuò)誤。
第2章 相關(guān)技術(shù)介紹
2.1 JAVA簡介
Java主要采用CORBA技術(shù)和安全模型,可以在互聯(lián)網(wǎng)應(yīng)用的數(shù)據(jù)保護(hù)。它還提供了對EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server pages),和XML技術(shù)。JAVA語言是一種面向?qū)ο蟮恼Z言,它通過提供最基本的方法來完成指定的任務(wù),開發(fā)者只需要知道一些概念就能夠編寫出一些應(yīng)用程序。Java程序相對較小,其代碼能夠在小機(jī)器上運(yùn)行。Java是一種計(jì)算機(jī)編程語言,具有封裝、繼承和多態(tài)性三個(gè)主要特性,廣泛應(yīng)用于企業(yè)Web應(yīng)用程序開發(fā)和移動應(yīng)用程序開發(fā)。
Java語言和一般編譯器以及直譯的區(qū)別在于,Java首先將源代碼轉(zhuǎn)換為字節(jié)碼,然后將其轉(zhuǎn)換為JVM的可執(zhí)行文件,JVM可以在各種不同的JVM上運(yùn)行。因此,實(shí)現(xiàn)了它的跨平臺特性。雖然這使得Java在早期非常緩慢,但是隨著Java的開發(fā),它已經(jīng)得到了改進(jìn)。
2.2 MySql數(shù)據(jù)庫
Mysql的語言是非結(jié)構(gòu)化的,用戶可以在數(shù)據(jù)上進(jìn)行工作。MySQL因?yàn)槠渌俣取⒖煽啃院瓦m應(yīng)性而備受關(guān)注。大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。并且因?yàn)镸ysql的語言和結(jié)構(gòu)比較簡單,但是功能和存儲信息量很強(qiáng)大,所以得到了普遍的應(yīng)用。
Mysql數(shù)據(jù)庫在編程過程中的作用是很廣泛的,為用戶進(jìn)行數(shù)據(jù)查詢帶來了的方便。Mysql數(shù)據(jù)庫的應(yīng)用因其靈活性強(qiáng),功能強(qiáng)大,所以在實(shí)現(xiàn)某功能時(shí)只需要一小段代碼,而不像其他程序需要編寫大段代碼??傮w來說,Mysql數(shù)據(jù)庫的語言相對要簡潔很多。
數(shù)據(jù)流程分析主要就是數(shù)據(jù)存儲的儲藏室,它是在計(jì)算機(jī)上進(jìn)行的,而不是現(xiàn)實(shí)中的儲藏室。數(shù)據(jù)的存放是按固定格式,而不是無序的,其定義就是:長期有固定格式,可以共享的存儲在計(jì)算機(jī)存儲器上。數(shù)據(jù)庫管理主要是數(shù)據(jù)存儲、修改和增加以及數(shù)據(jù)表的建立。為了保證系統(tǒng)數(shù)據(jù)的正常運(yùn)行,一些有能力的處理者可以進(jìn)行管理而不需要專業(yè)的人來處理。數(shù)據(jù)表的建立,可以對數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行調(diào)整,數(shù)據(jù)的重新組合及重新構(gòu)造,保證數(shù)據(jù)的安全性。介于數(shù)據(jù)庫的功能強(qiáng)大等特點(diǎn),本系統(tǒng)的開發(fā)主要應(yīng)用了Mysql進(jìn)行對數(shù)據(jù)的管理。
2.3 B/S架構(gòu)
B/S結(jié)構(gòu)的特點(diǎn)也非常多,例如在很多瀏覽器中都可以做出信號請求。并且可以適當(dāng)?shù)臏p輕用戶的工作量,通過對客戶端安裝或者是配置少量的運(yùn)行軟件就能夠逐步減少用戶的工作量,這些功能的操作主要是由服務(wù)器來進(jìn)行控制的,由于該軟件的技術(shù)不斷成熟,最主要的特點(diǎn)就是與瀏覽器相互配合為軟件開發(fā)帶來了極大的便利,不僅能夠減少開發(fā)成本,還能夠不斷加強(qiáng)系統(tǒng)的軟件功能,層層相互獨(dú)立和展現(xiàn)層是該B/S結(jié)構(gòu)完成相互連接的主要特性。
2.4 JSP技術(shù)介紹
JSP技術(shù)本身是一種腳本語言,但它的功能是十分強(qiáng)大的,因?yàn)樗梢允褂盟械腏AVA類。當(dāng)它與JavaBeans 類進(jìn)行結(jié)合時(shí),它可以使顯示邏輯和內(nèi)容分開,這就極大的方便了用戶的需求。JavaBeans 可以對JSP技術(shù)的程序進(jìn)行擴(kuò)展,從而形成新的應(yīng)用程序,而且JavaBeans的代碼可以重復(fù)使用,所以就便于對程序進(jìn)行維護(hù)。JavaBean 組件有內(nèi)部的接口,可以幫助不同的人對系統(tǒng)進(jìn)行訪問。1999年,Sun微系統(tǒng)公司正式推出了JSP技術(shù),這是一種動態(tài)技術(shù),是基于整個(gè)JAVA體系和JavaServlet提出的,是具有普遍適用性的WEB技術(shù),也是本系統(tǒng)設(shè)計(jì)的核心技術(shù)之一。JSP技術(shù)能夠極大的提高WEB網(wǎng)頁的運(yùn)行速度。這些內(nèi)容會與腳本結(jié)合,并且由JavaBean和Servlet組件封裝。所有的腳本均在服務(wù)器端運(yùn)行,JSP引擎會針對客戶端所 提交的申請進(jìn)行解釋,然后生成腳本程序和JSP標(biāo)識,然后通過HTML/XML頁面將結(jié)果反饋給瀏覽器。因此,開發(fā)人員親自設(shè)計(jì)最終頁面的格式和HTML/XML標(biāo)識時(shí),完全可以使用JSP技術(shù)。
所以結(jié)合生產(chǎn)辦公管理系統(tǒng)的需求及功能模塊的實(shí)現(xiàn),使用JSP技術(shù)是最合適的,而且JSP的拓展性比較好,對于系統(tǒng)在后期使用過程中可以不斷對系統(tǒng)功能進(jìn)行拓展,是系統(tǒng)更完成,更方便的滿足用戶管理。
2.5 ssm 三大框架
1.Spring的優(yōu)勢:
通過Spring的IOC特性,將對象之間的依賴關(guān)系交給了Spring控制,方便解耦,簡化了開發(fā)。
2.Spring MVC的優(yōu)勢:
SpringMVC是使用了MVC設(shè)計(jì)思想的輕量級web框架,對web層進(jìn)行解耦,使我們的開發(fā)更簡潔。
3.Mybatis的優(yōu)勢:
數(shù)據(jù)庫的操作(sql)采用xml文件配置,解除了sql和代碼的耦合,提供映射標(biāo)簽,支持對象和和數(shù)據(jù)庫orm字段關(guān)系的映射,支持對象關(guān)系映射標(biāo)簽,支持對象關(guān)系的組建提供了xml標(biāo)簽,支持動態(tài)的sql。
第3章 系統(tǒng)分析
可行性分析
本次設(shè)計(jì)基于B/S 模式下,運(yùn)用Java、JSP技術(shù)采用的是MySQL數(shù)據(jù)庫和Myeclipse實(shí)現(xiàn),總體的可行性共分為以下三個(gè)方面。
技術(shù)可行性分析
所謂的技術(shù)可行性就是在限定時(shí)間,前期擬定的功能能否被滿足。在開發(fā)設(shè)計(jì)上是否會遇上解決不了的問題。做完的項(xiàng)目能否被很好地應(yīng)用,如果存在缺點(diǎn)在后期的維護(hù)上是否存在很大的難度。在對這個(gè)系統(tǒng)評估后,認(rèn)定已存在的技術(shù)能達(dá)成目標(biāo)。用JSP技術(shù)來實(shí)現(xiàn)動態(tài)的頁面,嵌入低依賴性的設(shè)計(jì)模式,靈活的數(shù)據(jù)庫,配合穩(wěn)定的服務(wù)器,整個(gè)系統(tǒng)的運(yùn)行效率大大提升。由此可見,在技術(shù)層面達(dá)成目標(biāo)不是非非之想。
經(jīng)濟(jì)可行性分析
在項(xiàng)目上使用的工具大部分都是是當(dāng)下流行開源免費(fèi)的,所以在開發(fā)前期,開發(fā)時(shí)用于項(xiàng)目的經(jīng)費(fèi)將會大大降低,不會讓開發(fā)該軟件在項(xiàng)目啟動期受到經(jīng)費(fèi)的影響,所以經(jīng)濟(jì)上還是可行的。盡量用最少的花費(fèi)去滿足用戶的需求。省下經(jīng)費(fèi)用于人工費(fèi),以及設(shè)備費(fèi)用。將在無紙化,高效率的道路上越走越遠(yuǎn)。
操作可行性分析
本系統(tǒng)實(shí)現(xiàn)功能的操作很簡單,普通電腦的常見配置就可以運(yùn)行本軟件,并且只要粗通電腦使用的基本常識就可以流暢的使用本軟件。電腦具備連接互聯(lián)網(wǎng)的能力,并且可以正常訪問系統(tǒng),并不需要操作者有什么高超的能力,只需了解業(yè)務(wù)流程,并且按照專業(yè)知識進(jìn)行正確操作即可,所以教務(wù)系統(tǒng)網(wǎng)站具備操作可行性。
法律條規(guī)可行性分析
開發(fā)軟件有沒有觸犯法律,這涉及到軟件或者系統(tǒng)能不能發(fā)布的問題。如果觸犯了法律,就必將會受到法律的制裁。常見法律問題就是軟件抄襲問題,若是抄襲別人軟件,將會受到嚴(yán)厲懲罰。
需求分析
在系統(tǒng)開發(fā)設(shè)計(jì)前,應(yīng)該對功能做初步設(shè)想,清楚這個(gè)管理系統(tǒng)有什么板塊,每個(gè)板塊有什么功能,整體的設(shè)計(jì)是否滿足使用者的需求,接著對所開發(fā)的系統(tǒng)功能進(jìn)行的詳細(xì)分析總結(jié),從而設(shè)計(jì)出完整的系統(tǒng)并將其實(shí)現(xiàn)。用戶和開發(fā)人員的交流分析,使其達(dá)到最佳理解程度,使系統(tǒng)功能達(dá)到最佳。
學(xué)生信息用例圖如下所示。
圖3-2 學(xué)生信息實(shí)體圖
教師信息實(shí)體圖如下所示。
圖3-3 教師信息實(shí)體圖
教務(wù)系統(tǒng)網(wǎng)站在對需求做解析后,整個(gè)系統(tǒng)主要分為管理員和教師、學(xué)生,每個(gè)模塊下的分支功能不一樣。學(xué)生模塊包括:首頁、論壇、公告欄、課程資訊、課程信息、課程推薦;課程評價(jià)。教師模塊包括:首頁、課程信息、課程評價(jià);管理員模塊包括:首頁、輪播圖、公告欄、管理員、論壇列表、論壇分類列表、課程資訊、課程資訊分類、學(xué)生用戶、教師用戶、課程信息、課程評價(jià)、課程推薦管理等模塊。
非功能需求分析
系統(tǒng)非功能需求有非常多,比如性能需求、可承載最大用戶數(shù)、穩(wěn)定性、易用性需求等。本系統(tǒng)分析時(shí)考慮到易用性需求,因?yàn)橄到y(tǒng)是給人使用的,所以必須充分從用戶的角度出發(fā),考慮用戶體驗(yàn),使系統(tǒng)易理解易上手易操作。
業(yè)務(wù)流程分析
經(jīng)過對系統(tǒng)功能的分析,調(diào)查,研究,總結(jié)出教務(wù)系統(tǒng)網(wǎng)站主要實(shí)現(xiàn)的是對選課信息、課程信息等管理功能。這樣,可以對該系統(tǒng)繪制業(yè)務(wù)流程圖。
系統(tǒng)的業(yè)務(wù)流程如下圖所示。
圖3-2系統(tǒng)業(yè)務(wù)流程圖
數(shù)據(jù)流程分析
零層數(shù)據(jù)流程圖包括了登錄、用戶功能和檢索維護(hù)等模塊,在登錄模塊使用到的數(shù)據(jù)存儲有用戶賬戶文檔,用戶功能模塊需要的存儲是用戶各功能模塊數(shù)據(jù)文檔,檢索維護(hù)是使用以上這些數(shù)據(jù)文檔通過關(guān)鍵詞進(jìn)行檢索。
系統(tǒng)的零層數(shù)據(jù)流圖如下圖所示。
圖3-2系統(tǒng)數(shù)據(jù)流圖(零層)
一層數(shù)據(jù)流程圖是對零層數(shù)據(jù)流程圖的細(xì)化,將登錄細(xì)分為填制登錄數(shù)據(jù)和完善數(shù)據(jù),用戶功能細(xì)分為用戶基本功能和用戶主要功能。
系統(tǒng)的一層數(shù)據(jù)流圖如下圖所示。
圖3-3系統(tǒng)數(shù)據(jù)流圖(一層)
二層數(shù)據(jù)流程是對一層數(shù)據(jù)流層圖中填寫登錄信息、用戶功能的細(xì)化。即:填寫登錄信息細(xì)化為填制信息、后臺審核,用戶功能細(xì)化為教師資料修改、公告查看、成績錄入、課程錄入、選課查詢、學(xué)生資料修改、課程查看、選課申請等操作。
系統(tǒng)的二層數(shù)據(jù)流圖如下圖所示。
圖3-4系統(tǒng)數(shù)據(jù)流圖(二層)
第4章 系統(tǒng)設(shè)計(jì)
系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
目前B/S體系的系統(tǒng)主要的數(shù)據(jù)訪問方式是:通過瀏覽器頁面用戶可以進(jìn)入系統(tǒng),系統(tǒng)可以自動對用戶向服務(wù)器發(fā)送的請求進(jìn)行處理,處理請求是在系統(tǒng)后臺中進(jìn)行的,用戶在瀏覽器頁面上進(jìn)行相應(yīng)操作,就能夠看到服務(wù)端傳遞的處理結(jié)果。教務(wù)系統(tǒng)網(wǎng)站主要分為視圖-模型-控制三層架構(gòu)設(shè)計(jì)。在視圖層中,主要是操作在服務(wù)器端向客戶端反饋并顯示的數(shù)據(jù),在模型層中,主要處理相關(guān)的業(yè)務(wù)邏輯、數(shù)據(jù)整合等,最后的控制層它介于視圖和模型之間,主要是調(diào)整兩層之間的關(guān)系,最終落實(shí)數(shù)據(jù)的傳遞。
系統(tǒng)架構(gòu)圖如下圖所示。
圖4-1系統(tǒng)架構(gòu)圖
功能模塊設(shè)計(jì)
系統(tǒng)設(shè)計(jì)的目的是分析系統(tǒng)包括的所有功能結(jié)構(gòu),為開發(fā)人員設(shè)計(jì)開發(fā)和實(shí)現(xiàn)系統(tǒng)做好準(zhǔn)備工作。經(jīng)過前期的需求調(diào)查、分析和整理之后,確定的總體需求主要包括多個(gè)模塊,分別是:系統(tǒng)用戶設(shè)置、學(xué)生管理、教師管理、課程管理、學(xué)生選課管理、課程評價(jià)管理。系統(tǒng)整體角色分為三個(gè)部分,一是學(xué)生、二是教師、最后是管理員。權(quán)限分布也是很明顯,學(xué)生用戶是在除去瀏覽信息之外還具有查詢和管理自己賬戶信息、選課申請等權(quán)限;管理員是最高權(quán)限擁有者。
系統(tǒng)功能結(jié)構(gòu)圖如下圖所示。
圖4-2系統(tǒng)功能結(jié)構(gòu)圖
數(shù)據(jù)庫設(shè)計(jì)
概念模型設(shè)計(jì)
對于一個(gè)要開發(fā)的系統(tǒng)來說,E-R圖可以讓別人能更快更輕松的了解此系統(tǒng)的事務(wù)及它們之間的關(guān)系。根據(jù)系統(tǒng)分析階段所得出的結(jié)論確定了在教務(wù)系統(tǒng)網(wǎng)站中存在著多個(gè)實(shí)體分別是用教師、管理員、課程、選課、學(xué)生。
系統(tǒng)總體ER圖如下圖所示。
圖4-4系統(tǒng)總體ER圖
數(shù)據(jù)表設(shè)計(jì)
數(shù)據(jù)庫邏輯結(jié)構(gòu)就是將E-R圖在數(shù)據(jù)庫中用具體的字段進(jìn)行描述。用字段和數(shù)據(jù)類型描述來使對象特征實(shí)體化,最后形成具有一定邏輯關(guān)系的數(shù)據(jù)庫表結(jié)構(gòu)。教務(wù)系統(tǒng)網(wǎng)站所需要的部分?jǐn)?shù)據(jù)結(jié)構(gòu)表如下表所示。
course_information |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
course_information_id | int | 11 | 否 | 主鍵 | 課程信息ID |
course_number | varchar | 64 | 是 |
| 課程編號 |
course_type | varchar | 64 | 是 |
| 課程類型 |
course_name | varchar | 64 | 是 |
| 課程名稱 |
course_video | varchar | 255 | 是 |
| 課程視頻 |
picture | varchar | 255 | 是 |
| 圖片 |
teacher | int | 11 | 是 |
| 教師 |
course_introduction | text | 0 | 是 |
| 課程簡介 |
hits | int | 11 | 否 |
| 點(diǎn)擊數(shù) |
recommend | int | 11 | 否 |
| 智能推薦 |
create_time | datetime | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
course_recommendation |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
course_recommendation_id | int | 11 | 否 | 主鍵 | 課程推薦ID |
course_number | varchar | 64 | 是 |
| 課程編號 |
course_type | varchar | 64 | 是 |
| 課程類型 |
course_name | varchar | 64 | 是 |
| 課程名稱 |
picture | varchar | 255 | 是 |
| 圖片 |
teacher | int | 11 | 是 |
| 教師 |
score | int | 11 | 是 |
| 評分 |
rank | int | 11 | 是 |
| 排位 |
course_introduction | text | 0 | 是 |
| 課程簡介 |
hits | int | 11 | 否 |
| 點(diǎn)擊數(shù) |
praise_len | int | 11 | 否 |
| 點(diǎn)贊數(shù) |
recommend | int | 11 | 否 |
| 智能推薦 |
create_time | datetime | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
curriculum_evaluation |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
curriculum_evaluation_id | int | 11 | 否 | 主鍵 | 課程評價(jià)ID |
course_number | varchar | 64 | 是 |
| 課程編號 |
course_type | varchar | 64 | 是 |
| 課程類型 |
course_name | varchar | 64 | 是 |
| 課程名稱 |
teacher | int | 11 | 是 |
| 教師 |
score | varchar | 64 | 是 |
| 評分 |
student | int | 11 | 是 |
| 學(xué)生 |
whether_to_evaluate | varchar | 64 | 是 |
| 是否評價(jià) |
evaluation_details | text | 0 | 是 |
| 評價(jià)詳情 |
recommend | int | 11 | 否 |
| 智能推薦 |
create_time | datetime | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
notice |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
notice_id | mediumint | 8 | 否 | 主鍵 | 公告id |
title | varchar | 125 | 否 |
| 標(biāo)題 |
content | longtext | 0 | 是 |
| 正文 |
create_time | timestamp | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
slides |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
slides_id | int | 10 | 否 | 主鍵 | 輪播圖ID |
title | varchar | 64 | 是 |
| 標(biāo)題 |
content | varchar | 255 | 是 |
| 內(nèi)容 |
url | varchar | 255 | 是 |
| 鏈接 |
img | varchar | 255 | 是 |
| 輪播圖 |
hits | int | 10 | 否 |
| 點(diǎn)擊量 |
create_time | timestamp | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
student_user |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
student_user_id | int | 11 | 否 | 主鍵 | 學(xué)生用戶ID |
gender | varchar | 64 | 是 |
| 性別 |
examine_state | varchar | 16 | 否 |
| 審核狀態(tài) |
recommend | int | 11 | 否 |
| 智能推薦 |
user_id | int | 11 | 否 |
| 用戶ID |
create_time | datetime | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
|
|
|
|
| |
teacher_user |
|
|
|
| |
字段名稱 | 類型 | 長度 | 不是null | 主鍵 | 字段說明 |
teacher_user_id | int | 11 | 否 | 主鍵 | 教師用戶ID |
gender | varchar | 64 | 是 |
| 性別 |
examine_state | varchar | 16 | 否 |
| 審核狀態(tài) |
recommend | int | 11 | 否 |
| 智能推薦 |
user_id | int | 11 | 否 |
| 用戶ID |
create_time | datetime | 0 | 否 |
| 創(chuàng)建時(shí)間 |
update_time | timestamp | 0 | 否 |
| 更新時(shí)間 |
第5章 系統(tǒng)實(shí)現(xiàn)
5.1基本任務(wù)
本章節(jié)詳細(xì)介紹了系統(tǒng)各大功能模塊的實(shí)現(xiàn)過程和實(shí)現(xiàn)方法,對每個(gè)功能進(jìn)行實(shí)現(xiàn),設(shè)計(jì)詳細(xì)的根本目標(biāo)是確定應(yīng)該具體實(shí)現(xiàn)所要求的系統(tǒng),每個(gè)模塊都對應(yīng)著相應(yīng)的界面和顯示的配圖。主要從主頁面的實(shí)現(xiàn)、登錄模塊的實(shí)現(xiàn)、教師管理模塊的實(shí)現(xiàn)、學(xué)生管理模塊的實(shí)現(xiàn)、課程管理模塊的實(shí)現(xiàn)、學(xué)生選課管理模塊的實(shí)現(xiàn)、課程評價(jià)管理模塊的實(shí)現(xiàn)的實(shí)現(xiàn)等方面來描述。
系統(tǒng)呈現(xiàn)出一種簡潔大方的后臺:界面簡約、鱗次櫛比,用戶能輕車熟路的使用。出于對系統(tǒng)使用群體廣泛的顧慮,應(yīng)有良好性能的后臺。
5.2登錄模塊的實(shí)現(xiàn)
系統(tǒng)的登錄窗口是用戶的入口,用戶只有在登錄成功后才可以進(jìn)入訪問。通過在登錄提交表單,后臺處理判斷是否為合法用戶,進(jìn)行頁面跳轉(zhuǎn),進(jìn)入系統(tǒng)中去。
登錄合法性判斷過程:用戶輸入賬號和密碼后,系統(tǒng)首先確定輸入輸入數(shù)據(jù)合法性,然后在login.jsp頁面發(fā)送登錄請求,調(diào)用src下的mainctrl類的dopost方法來驗(yàn)證。
用戶登錄模塊的IPO如下所示:
輸入:用戶名和密碼。
處理:
1)檢測用戶輸入的賬號、密碼是否正確及在數(shù)據(jù)庫已對應(yīng)存在。
2)從數(shù)據(jù)庫中提取記錄,并儲存在本地的session中(timeout默認(rèn)=30min)。
3)根據(jù)用戶名,將其顯示在系統(tǒng)首頁上。
輸出:是否成功的信息。
登錄流程圖如下所示。
圖5-1登錄流程圖
系統(tǒng)登錄界面如下所示。
圖5-2系統(tǒng)登錄界面
登錄代碼如下:
/**
* 登錄
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[執(zhí)行登錄接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}else{
return error(30000, "賬號或密碼不能為空");
}
if (resultList == null || password == null) {
return error(30000, "賬號或密碼不能為空");
}
//判斷是否有這個(gè)用戶
if (resultList.size()<=0){
return error(30000,"用戶不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用戶組不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查詢用戶審核狀態(tài)
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
if (res==null){
return error(30000,"用戶不存在");
}
if (!res.equals("已通過")){
return error(30000,"該用戶審核未通過");
}
}
//查詢用戶狀態(tài)
if (byUsername.getState()!=1){
return error(30000,"用戶非可用狀態(tài),不能登錄");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存儲Token到數(shù)據(jù)庫
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用戶信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "賬號或密碼不正確");
}
}
public String select(Map<String,String> query,Map<String,String> config){
StringBuffer sql = new StringBuffer("select ");
sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");
sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));
if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){
sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");
}
if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){
sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");
}
if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){
int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;
int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;
sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);
}
log.info("[{}] - 查詢操作,sql: {}",table,sql);
return sql.toString();
}
public List selectBaseList(String select) {
List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);
List<E> list = new ArrayList<>();
for (Map<String,Object> map:mapList) {
list.add(JSON.parseObject(JSON.toJSONString(map),eClass));
}
return list;
}
5.3管理員功能模塊
管理員登錄教務(wù)系統(tǒng)網(wǎng)站,管理員后臺功能為:首頁、輪播圖、公告欄、管理員、論壇列表、論壇分類列表、課程資訊、課程資訊分類、學(xué)生用戶、教師用戶、課程信息、課程評價(jià)、課程推薦等功能,如下圖所示:
圖 5-3 管理員后臺功能界面圖
學(xué)生管理,在學(xué)生管理界面圖可添加學(xué)生信息內(nèi)容:昵稱、用戶名、性別等信息,并可在學(xué)生管理查詢頁面進(jìn)行編輯刪除詳情等操作,如圖5-4
圖5-4學(xué)生管理界面圖
教師管理,在教師管理頁面中對教師進(jìn)行添加:昵稱、用戶名、性別等內(nèi)容,還可在教師查詢頁面對已有的教師信息進(jìn)行編輯刪除詳情等操作,如圖5-5所示:
圖5-5 教師信息管理界面圖
課程管理,在課程管理頁面圖中可以添加課程內(nèi)容:課程類型、課程編號、課程名稱、課程視頻、圖片、教師、課程簡介等內(nèi)容,還可在課程管理查詢頁面對已有的課程進(jìn)行評價(jià),編輯刪除詳情等操作 如圖5-6
圖5-6課程管理界面圖
課程推薦管理,在課程推薦管理可查詢、課程編號、課程名稱、教師類型、課程名稱、圖片、教師、評分、排位等內(nèi)容,還可在該頁面進(jìn)行編輯刪除詳細(xì)等操作,如圖5-7
圖5-7 課程推薦管理界面圖
課程評價(jià)管理,在課程評價(jià)管理頁面列表可查詢評價(jià)信息:課程編號、課程名稱、教師工號、教師姓名、評分、評價(jià)詳情、添加時(shí)間等內(nèi)容,還可在該頁面進(jìn)行編輯刪除詳細(xì)等操作,如5-8
圖5-8課程評價(jià)管理界面圖
5.4教師功能模塊
教師登錄教務(wù)系統(tǒng)網(wǎng)站,教師后臺功能為:首頁、課程信息、課程評價(jià)等功能,如下圖所示:
圖5-9教師功能界面圖
課程管理,在課程管理頁面圖中可以添加課程內(nèi)容:課程類型、課程編號、課程名稱、課程視頻、圖片、教師、課程簡介等內(nèi)容,還可在課程管理查詢頁面已有的課程,修改、編輯、刪除詳情等操作。
圖5-10課程管理界面圖
5.4學(xué)生功能模塊
學(xué)生登錄教務(wù)系統(tǒng)網(wǎng)站,教師后臺功能為:首頁、課程評價(jià)等功能,如下圖所示:
圖5-11學(xué)生功能界面圖
第6章 系統(tǒng)測試
測試目的
在對該系統(tǒng)進(jìn)行完詳細(xì)設(shè)計(jì)和編碼之后,就要對教務(wù)系統(tǒng)網(wǎng)站的程序進(jìn)行測試,檢測程序是否運(yùn)行無誤,反復(fù)進(jìn)行測試和修改,使之最后成為完整的軟件,滿足用戶的需求,實(shí)現(xiàn)預(yù)期的功能。
測試概述
軟件測試是軟件開發(fā)完成后必須經(jīng)過的一道程序,它在軟件開發(fā)過程中地位十分重要,需要由專業(yè)的測試工程師來對軟件進(jìn)行各方面的測試,大到功能模塊測試,小到代碼的單元測試,這對測試工程師來說需要有足夠的耐心和專業(yè)的測試方案,軟件測試歸根結(jié)底就是對軟件的結(jié)構(gòu)和功能的綜合測評,需要做到結(jié)構(gòu)穩(wěn)定和功能正確,二者兼顧。軟件測試也叫尋找系統(tǒng)bug的過程,世界上沒有完美無缺、不存在bug的軟件,只能將軟件的bug降到最低最小,來追求極致。
單元測試
在軟件的測試過程中,通常測試人員需要針對不同的功能模塊設(shè)計(jì)多種測試用例。通過測試用例能夠及時(shí)發(fā)現(xiàn)代碼業(yè)務(wù)邏輯上是否與真實(shí)的業(yè)務(wù)邏輯相對應(yīng),及時(shí)發(fā)現(xiàn)代碼上或邏輯上的缺陷,以此來來完善系統(tǒng),提高軟件產(chǎn)品的質(zhì)量,使軟件具有良好的用戶體驗(yàn)。
登錄功能測試
登錄測試用例表如下所示。
表6-1登錄測試用例
測試性能 | 用戶或操作員登錄系統(tǒng) | ||
用例目的 | 測試用戶或操作員登錄系統(tǒng)時(shí)功能是否正常 | ||
前提條件 | 進(jìn)入用戶登錄頁面或操作員登錄頁面 | ||
輸入條件 | 預(yù)期輸出 | 實(shí)際情況 | |
各項(xiàng)信息不予填寫,直接點(diǎn)擊登陸按鈕 | 不允許登錄,提示填寫賬號相關(guān)信息 | 一致 | |
填寫錯(cuò)誤的登錄名或密碼后點(diǎn)擊登錄系統(tǒng) | 提示用戶名或密碼錯(cuò)誤,要求重新填寫進(jìn)行登錄 | 一致 | |
填寫與驗(yàn)證碼信息不一致的信息 | 系統(tǒng)顯示出提示信息,表明驗(yàn)證碼錯(cuò)誤,要求重新填寫 | 一致 | |
選課功能測試
課程選課測試用例表如下所示。
表6-3課程選課測試用例
測試性能 | 用戶進(jìn)行選課課程的操作 | ||
用例目的 | 測試用戶進(jìn)行選課課程操作時(shí),系統(tǒng)的功能是否正常 | ||
前提條件 | 用戶進(jìn)入課程詳情頁,該課程能夠被選課 | ||
輸入條件 | 預(yù)期輸出 | 實(shí)際情況 | |
用戶未登錄,點(diǎn)擊選課按鈕 | 跳轉(zhuǎn)至登錄頁面,提示用戶先進(jìn)性登錄 | 一致 | |
正常的登錄用戶,點(diǎn)擊選課按鈕 | 系統(tǒng)彈出提示框,提示用戶選課成功,同時(shí)該課程的狀態(tài)更改為已選課狀態(tài) | 一致 | |
課程功能測試
課程管理測試用例表如下所示。
表6-4課程管理測試用例
測試性能 | 課程相關(guān)信息管理功能 | ||
用例目的 | 測試系統(tǒng)后臺操作員對課程相關(guān)信息進(jìn)行管理的功能是否正常 | ||
前提條件 | 登錄系統(tǒng)后臺進(jìn)入相關(guān)管理頁面 | ||
輸入條件 | 預(yù)期輸出 | 實(shí)際情況 | |
普通操作員登錄,點(diǎn)擊進(jìn)入課程相關(guān)信息管理的頁面 | 提示非超級用戶,權(quán)限不夠,無法進(jìn)入相關(guān)頁面 | 一致 | |
超級操作員登入,刪除某個(gè)已被選課的課程 | 提示該課程刪除失敗 | 一致 | |
點(diǎn)擊增加課程按鈕 | 頁面正常跳轉(zhuǎn) | 一致 | |
增加課程是,填寫已存在的課程編號 | 提示該編號已存在 | 一致 | |
集成測試
經(jīng)過對此系統(tǒng)的測試,得出該系統(tǒng)足以滿足用戶日常需求,在功能項(xiàng)目和操作等方面也能滿足操作員對于其他用戶的管理。但是,還有很多功能有待添加,這個(gè)系統(tǒng)僅能滿足大部分的需求,還需要對此系統(tǒng)的功能更進(jìn)一步的完善,這樣使用起來才能更加的完美。
總結(jié)
通過教務(wù)系統(tǒng)網(wǎng)站的開發(fā),本人鞏固了之前學(xué)過的知識,如今將平時(shí)所學(xué)到的知識融合在設(shè)計(jì)中,在設(shè)計(jì)過程中,做了很多的準(zhǔn)備,首先,在數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)過程中,尤其是在數(shù)據(jù)庫的工作原理、工作特點(diǎn),對其深刻的討論,與此同時(shí),對于小型站點(diǎn)來說,最好服務(wù)器的選擇,其次,利用所學(xué)的知識點(diǎn)分析所做的系統(tǒng),并在此基礎(chǔ)上設(shè)計(jì)。
目前本系統(tǒng)已經(jīng)上線,正在試運(yùn)行階段,用戶反饋良好,基本完成用戶所需,試運(yùn)行過程中沒有出現(xiàn)阻斷性問題,有一些不足和小問題也及時(shí)予以修正,系統(tǒng)上線后,為了保證數(shù)據(jù)的安全性,對系統(tǒng)進(jìn)行了備份操作,系統(tǒng)備份是每兩個(gè)月備份一次,數(shù)據(jù)庫備份為每周備份一次,系統(tǒng)部署在租賃的云平臺服務(wù)器中。
本次系統(tǒng)上線成功后,得到了用戶的高度認(rèn)可,但是在功能上和性能上還需做進(jìn)一步的研究處理,使其有更高的性能和更好的用戶體驗(yàn)。
系統(tǒng)在以后的升級過程中,需要解決一系列用戶所提出的問題,例如打印過程中如何避免瀏覽器的兼容性問題,大量用戶訪問時(shí),如何保持較高的響應(yīng)速度,在系統(tǒng)今后的升級過程中將著重解決這些安全性問題。
致謝
畢業(yè)設(shè)計(jì)結(jié)束的同時(shí)也意味著四年的大學(xué)生活就要結(jié)束了。社區(qū)人員管理系統(tǒng)的完成以及如何在系統(tǒng)運(yùn)行過程中實(shí)現(xiàn)的更好,這其中付出了很大的努力,這段時(shí)光將會終身難忘。
在畢業(yè)設(shè)計(jì)的這一段時(shí)間里,離不開導(dǎo)師的細(xì)心指導(dǎo),還有同學(xué)們的熱情幫助,有時(shí)候幾個(gè)同學(xué)在一起討論系統(tǒng)中的某個(gè)功能模塊如何實(shí)現(xiàn),如何實(shí)現(xiàn)的更好,或是問題沒得到有效的解決,就會沒有心思做其他的事情,讓我們對學(xué)習(xí)充滿了動力。
在畢業(yè)設(shè)計(jì)即將結(jié)束之時(shí),首先要感謝我的指導(dǎo)老師,謝謝您在畢業(yè)設(shè)計(jì)和畢業(yè)論文中對我的指導(dǎo)。在您的細(xì)心指導(dǎo)下我才能快速的掌握系統(tǒng)的相關(guān)功能,在您的大力幫助下我才能將課本上的知識與自己的項(xiàng)目結(jié)合,真正的做到學(xué)以致用。感謝您經(jīng)常犧牲自己的休息時(shí)間,利用其豐富的教學(xué)和項(xiàng)目經(jīng)驗(yàn)對我進(jìn)行指導(dǎo)。課堂上,您教會我們?nèi)绾螌W(xué)習(xí)、教會我們新的知識,在課下,您又像朋友一樣親切,教會了我很多道理,讓我意識到先做人、后做事。感謝所有教過我的老師,為我傾注了大量的心血,正是你們的諄諄教誨、嚴(yán)謹(jǐn)教學(xué)才使我能順利的完成學(xué)業(yè),再此向你們表示深深的感謝。感謝大學(xué)里教過我的每一位老師,真心祝福您們。
在這里還得感謝我的戰(zhàn)友們,也就是同學(xué)們對我的大力支持及幫助。正是因?yàn)橛心銈兊牟粩鄮椭?、鼓?lì),熬夜通宵,不停的調(diào)試、測試程序,給我?guī)砹藰O大的動力,才能最終完成網(wǎng)站的運(yùn)行。我們在一起交流、談?wù)摰臅r(shí)光,都將是我們在通往未來道路上的寶貴財(cái)富。我要深深地感謝你們!
畢業(yè)在即,在今后的工作和生活中,我會銘記師長們的教誨、同學(xué)們的幫助,繼續(xù)不懈努力和追求,來報(bào)答所有支持和幫助過我的人!
最后,我要向犧牲了休息時(shí)間來對本文進(jìn)行審閱,評議和參與論文答辯的各位老師表示深深的感謝。在此,衷心的謝謝您們!
參考文獻(xiàn)
[1]徐佩.新時(shí)期計(jì)算機(jī)軟件開發(fā)技術(shù)的應(yīng)用及發(fā)展趨勢[J].農(nóng)家參謀,2019(08):167.
[2]張帥,崔婀娜,魏立波.互聯(lián)網(wǎng)+健康在線服務(wù)平臺的設(shè)計(jì)與實(shí)現(xiàn)[J].科技創(chuàng)新與應(yīng)用,2019(10):91-92.
[3]谷利國,陳存田,張甲瑞.基于B/S模式的人事教育信息管理系統(tǒng)的分析與設(shè)計(jì)[J].電腦知識與技術(shù),2019,15(10):58-59.
[4]胥新政,強(qiáng)毅.基于JSP的常用金屬材料標(biāo)準(zhǔn)檢索平臺開發(fā)設(shè)計(jì)[J].制造業(yè)自動化,2019,41(03):41-43+69.
[5]王祖維,南淮耀,張英.“互聯(lián)網(wǎng)+”視域下的高校學(xué)生公寓管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)——以沈陽師范大學(xué)為例[J].現(xiàn)代商貿(mào)工業(yè),2019,40(08):187-188.
[6]廖明華,齊攀.學(xué)生職業(yè)能力測評管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].廣東交通職業(yè)技術(shù)學(xué)院學(xué)報(bào),2019,18(01):48-52.
[7]李冬冬,劉華明,畢學(xué)慧,王秀友.舊衣申領(lǐng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識與技術(shù),2019,15(08):47-50.
[8]李慶年.“互聯(lián)網(wǎng)+”視域下的人才招聘管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].國際公關(guān),2019(03):164-165.
[9]劉婷,彭煥峰,邵淑婷.基于云平臺的高校監(jiān)考管理系統(tǒng)[J].電腦知識與技術(shù),2019,15(07):91-92.
[10]趙丙秀.基于百度AI平臺的Web人臉注冊和登錄系統(tǒng)的實(shí)現(xiàn)[J].電腦知識與技術(shù),2019,15(07):114-115.
[11]戴昭穎,尹濤.鋼鐵行業(yè)成本預(yù)算系統(tǒng)開發(fā)應(yīng)用實(shí)踐[J].電子技術(shù)與軟件工程,2019(04):29-30.
[12]曹燦,劉志剛.基于SSH和Layui的工程科學(xué)前沿與實(shí)踐系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2019,32(02):91-92+96.
[13]謝路.基于Web的考務(wù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].福建電腦,2019,35(01):136-137.
[14]張繼東.MySQL數(shù)據(jù)庫基于JSP的訪問技術(shù)[J/OL].電子技術(shù)與軟件工程,2017,(15):169(2017-08-03).
[15]韓思凡.Web開發(fā)中的JSP與HTML的基礎(chǔ)應(yīng)用[J].科學(xué)技術(shù)創(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
免費(fèi)領(lǐng)取項(xiàng)目源碼,請關(guān)注點(diǎn)贊+私聊
總結(jié)
以上是生活随笔為你收集整理的(附源码)ssm教务系统网站 毕业设计290915的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络爬虫的作用和简单分类
- 下一篇: java信息管理系统总结_java实现科