??作者簡介:擁有多年開發(fā)工作經(jīng)驗,分享技術(shù)代碼幫助學(xué)生學(xué)習(xí),獨立完成自己的項目或者畢業(yè)設(shè)計。
- 代碼可以私聊博主獲取。??
- 贈送計算機畢業(yè)設(shè)計600個選題excel文件,幫助大學(xué)選題。
- 贈送開題報告模板,幫助書寫開題報告。
作者完整代碼目錄供你選擇:
- 《Springboot網(wǎng)站項目》400套
- 《ssm網(wǎng)站項目》800套
- 《小程序項目》300套
- 《App項目》500套
- 《python網(wǎng)站項目》600套
?感興趣大家可以點點關(guān)注收藏,后續(xù)更新更多項目資料。?
項目演示(需要演示視頻可以私信我)
摘要
隨著信息技術(shù)在管理上越來越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實施在技術(shù)上已逐步成熟。本文介紹了信息化在線教學(xué)平臺的開發(fā)全過程。通過分析信息化在線教學(xué)平臺管理的不足,創(chuàng)建了一個計算機管理信息化在線教學(xué)平臺的方案。文章介紹了信息化在線教學(xué)平臺的系統(tǒng)分析部分,包括可行性分析等,系統(tǒng)設(shè)計部分主要介紹了系統(tǒng)功能設(shè)計和數(shù)據(jù)庫設(shè)計。
本信息化在線教學(xué)平臺有管理員功能有個人中心,學(xué)生信息管理,教師信息管理,教學(xué)信息管理,學(xué)生成績管理,留言板管理,系統(tǒng)管理等。教師可以對學(xué)生成績進行管理和留言回復(fù)。學(xué)生可以在線考試和留言。因而具有一定的實用性。
本站是一個B/S模式系統(tǒng),采用Spring Boot框架,MYSQL數(shù)據(jù)庫設(shè)計開發(fā),充分保證系統(tǒng)的穩(wěn)定性。系統(tǒng)具有界面清晰、操作簡單,功能齊全的特點,使得信息化在線教學(xué)平臺管理工作系統(tǒng)化、規(guī)范化。本系統(tǒng)的使用使管理人員從繁重的工作中解脫出來,實現(xiàn)無紙化辦公,能夠有效的提高信息化在線教學(xué)平臺管理效率。
關(guān)鍵詞:信息化在線教學(xué)平臺;Spring Boot框架;MYSQL數(shù)據(jù)庫;
1系統(tǒng)概述
1.1 研究背景
隨著計算機技術(shù)的發(fā)展以及計算機網(wǎng)絡(luò)的逐漸普及,互聯(lián)網(wǎng)成為人們查找信息的重要場所,二十一世紀(jì)是信息的時代,所以信息的管理顯得特別重要。因此,使用計算機來管理信息化在線教學(xué)平臺的相關(guān)信息成為必然。開發(fā)合適的信息化在線教學(xué)平臺,可以方便管理人員對信息化在線教學(xué)平臺的管理,提高信息管理工作效率及查詢效率,有利于更好的為人們服務(wù)。
1.2研究目的
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,網(wǎng)絡(luò)時代的到來,網(wǎng)絡(luò)信息也將會改變當(dāng)今社會。各行各業(yè)在日常企業(yè)經(jīng)營管理等方面也在慢慢的向規(guī)范化和網(wǎng)絡(luò)化趨勢匯合。信息化在線教學(xué)平臺的信息化程度體現(xiàn)在將互聯(lián)網(wǎng)與信息技術(shù)應(yīng)用于經(jīng)營與管理,以現(xiàn)代化工具代替?zhèn)鹘y(tǒng)手工作業(yè)。無疑,使用網(wǎng)絡(luò)信息化管理使信息管理更先進、更高效、更科學(xué),信息交流更迅速。
對于之前信息化在線教學(xué)平臺的管理,大部分都是使用傳統(tǒng)的人工方式去管理,這樣導(dǎo)致了管理效率低下、出錯頻率高。而且,時間一長的話,積累下來的數(shù)據(jù)信息不容易保存,對于查詢、更新還有維護會帶來不少問題。對于數(shù)據(jù)交接也存在很大的隱患。如果采用電子化的存儲方式就會帶來很大的改善,而且給用戶的查詢帶來了很大便利,因此設(shè)計一個信息化在線教學(xué)平臺刻不容緩,能夠提高信息的管理水平。
1.3系統(tǒng)設(shè)計思想
一個成功的網(wǎng)站應(yīng)明確建設(shè)網(wǎng)站的目的,確定網(wǎng)站的功能,確定網(wǎng)站規(guī)模、投入費用,進行必要的市場分析等。只有詳細(xì)的策劃,才能避免在網(wǎng)站建設(shè)中出現(xiàn)的很多問題,使網(wǎng)站建設(shè)能順利進行。同時,一個大型的計算機網(wǎng)站系統(tǒng),必須有一個正確的設(shè)計指導(dǎo)思想,通過合理選擇數(shù)據(jù)結(jié)構(gòu)、網(wǎng)絡(luò)結(jié)構(gòu)、操作系統(tǒng)以及開發(fā)環(huán)境,構(gòu)成一個完善的網(wǎng)絡(luò)體系結(jié)構(gòu),才能充分發(fā)揮計算機信息管理的優(yōu)勢。根據(jù)現(xiàn)實生活中網(wǎng)民的實際需求,本系統(tǒng)的設(shè)計按照下述原則進行。
- 有效性:實際上這里的有效性包括兩個方面的意思:有用性和可用性。有用性是指站點潛在的能滿足用戶需求的功能,而可用性是指能夠通過站點的操作實現(xiàn)特定的目標(biāo)。可以看出一個站點如果不能恰當(dāng)運行或設(shè)計得非常槽糕就不是一個好站點??捎谜军c的效益應(yīng)該非常高,并易于學(xué)習(xí),在實現(xiàn)用戶目標(biāo)時令人滿意而不出錯。
- 高可靠性:一個實用的網(wǎng)站同時必須是可靠的,本設(shè)計通過合理而先進的網(wǎng)絡(luò)設(shè)計以及軟、硬件的優(yōu)化選型,可保證網(wǎng)站的可靠性與容錯性。
- 高安全性:在設(shè)計中,將充分利用網(wǎng)絡(luò)軟、硬件提供的各種安全措施,既可以保證用戶共享資源,充分考慮系統(tǒng)及數(shù)據(jù)資源的容災(zāi)、備份、恢復(fù)的要求。為系統(tǒng)提供強大的數(shù)據(jù)庫備份工具??梢员WC關(guān)鍵數(shù)據(jù)的安全性。操作權(quán)限級,設(shè)置不同的角色確保每一步的操作權(quán)限,可以由管理員進行設(shè)置。
- 先進性:采用目前國際上最先進的開發(fā)技術(shù),使用JSP開發(fā)技術(shù),MYSQL作為網(wǎng)站后臺數(shù)據(jù)庫。采用這些技術(shù)降低了以后的系統(tǒng)運營成本,提高了系統(tǒng)的穩(wěn)定性和易維護性。
- 采用標(biāo)準(zhǔn)技術(shù):本網(wǎng)站的所有設(shè)計遵循國際上現(xiàn)行的標(biāo)準(zhǔn)進行,以提高系統(tǒng)的開放性。
- 外觀和技術(shù)平衡:系統(tǒng)采用Web風(fēng)格的界面設(shè)計,界面友好、美觀,使用方便,易學(xué)易用。網(wǎng)站設(shè)計的關(guān)鍵問題是外觀和技術(shù)的平衡。外現(xiàn)不好的網(wǎng)站令人厭煩,站點可以運行很好,但卻不能帶動用戶積極性,相反,如果外觀非常有表現(xiàn)力,但技術(shù)有限,用戶則會感到非常失望。在外觀與技術(shù)之間需要確定一個清晰而連續(xù)的關(guān)系,即外觀與站點的意圖相關(guān),對不同類型的網(wǎng)站處理方法不同
2相關(guān)技術(shù)
2.1?MYSQL數(shù)據(jù)庫
MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器。 是基于SQL的客戶/服務(wù)器模式的關(guān)系數(shù)據(jù)庫管理系統(tǒng),它的有點有有功能強大、使用簡單、管理方便、安全可靠性高、運行速度快、多線程、跨平臺性、完全網(wǎng)絡(luò)化、穩(wěn)定性等,非常適用于Web站點或者其他應(yīng)用軟件的數(shù)據(jù)庫后端的開發(fā)工作。此外,用戶可利用許多語言編寫訪問MySQL數(shù)據(jù)庫的程序。作為開放源代碼運動的產(chǎn)物之一,MySQL關(guān)系數(shù)據(jù)庫管理系統(tǒng)越來越受到人們的青睞,應(yīng)用范圍也越來越廣。速度和易用性使MySQL特別適用于Web站點或應(yīng)用軟件的數(shù)據(jù)庫后端的開發(fā)工作。
MYSQL數(shù)據(jù)庫具有以下特點:
1、C和C ++中使用和測試,以確保源代碼的編譯器的便攜性和靈活性。
2、支持多種操作系統(tǒng)AIX的,F(xiàn)reeBSD下,HP-UX,Linux和Mac OS中,Novell公司的Netware,OpenBSD系統(tǒng),OS/2裹時,Solaris,Windows等。
3、提供了用于不同的編程語言的API。編程語言,如C,, C ++,Python和Java的,的Perl,PHP,埃菲爾鐵塔,Ruby和Tcl的。
4、以及使用的CPU資源來支持多線程。
5、算法優(yōu)化查詢SQL,切實提高搜索速度。
6、網(wǎng)絡(luò)上的客戶端和服務(wù)器可以用來編程任何獨立的編程環(huán)境,也有中國,GB2312,BIG5,日文寫作,一般基金,用于支持多國語言,并且可以嵌入在數(shù)據(jù)表和其他軟件shift_jis訪問柱可以用作的名稱。
7、TCP / IP,ODBC和JDBC數(shù)據(jù)庫,并提供連接到其他。
8、管理工具的管理,控制和優(yōu)化數(shù)據(jù)庫的操作。
9、可以數(shù)以千萬計的記錄在一個大的數(shù)據(jù)庫。
2.2?B/S結(jié)構(gòu)
B/S架構(gòu)是一種基于互聯(lián)網(wǎng)系統(tǒng)的軟件系統(tǒng)開發(fā)架構(gòu),是現(xiàn)如今在軟件系統(tǒng)開發(fā)中采用非常大量的一種軟件系統(tǒng)結(jié)構(gòu)?,F(xiàn)如今B/S架構(gòu)已經(jīng)被大量使用,打破了C/S結(jié)構(gòu)的結(jié)構(gòu),給基于網(wǎng)絡(luò)結(jié)構(gòu)的軟件系統(tǒng)提供了良好的支持。B/S架構(gòu)伴隨著計算機網(wǎng)絡(luò)技術(shù)發(fā)展而逐步的發(fā)展和更新。伴隨著互聯(lián)網(wǎng)的進一步發(fā)展,就要求大多數(shù)的管理系統(tǒng)要求不僅僅可以在一臺電腦上使用,同時可以在接入互聯(lián)網(wǎng)的其他電腦也可以使用對系統(tǒng)進行操作和使用。在這樣的背景下基于B/S架構(gòu)的軟件系統(tǒng)設(shè)計方法得到了越來越大量的使用,基礎(chǔ)部分也在不斷的更新。
B/S架構(gòu)是利用操作系統(tǒng)中的瀏覽器來進行使用的,不是一種窗體軟件系統(tǒng),不需要在使用系統(tǒng)的電腦上進行安裝。B/S架構(gòu)的運行方式是在遠(yuǎn)程的服務(wù)器上把開發(fā)的軟件系統(tǒng)部署在遠(yuǎn)程的服務(wù)器上,在部署好軟件系統(tǒng)之后就可以實現(xiàn)在任何接入互聯(lián)網(wǎng)的電腦上訪問部署好的軟件系統(tǒng)。B/S架構(gòu)給使用管理系統(tǒng)的用戶帶來極大的便利。
在三層體系結(jié)構(gòu)的B/S(Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu))系統(tǒng)中,用戶可以通過瀏覽器向分布在網(wǎng)絡(luò)上的眾多服務(wù)器發(fā)出請求。B/S系統(tǒng)極大地簡化了客戶機的工作量,客戶機上只需要安裝、配置少量的客戶端運行軟件即可,服務(wù)器將擔(dān)負(fù)大量的工作,對數(shù)據(jù)庫的訪問以及應(yīng)用程序的執(zhí)行都將由服務(wù)器來完成。
B/S架構(gòu)的不斷成熟,主要使用WWW瀏覽器技術(shù),結(jié)合多種瀏覽器腳本語言,用通用瀏覽器需要實現(xiàn)原本復(fù)雜的專有軟件來實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本,是一種新的軟件架構(gòu)。B/S系統(tǒng)包括:表示邏輯層,控制邏輯層,數(shù)據(jù)展現(xiàn)層,三層是相對獨立又相互關(guān)聯(lián)。
2.3?Spring Boot框架簡介
Spring Boot是由Pivotal團隊提供的全新框架,其設(shè)計目的是用來簡化新Spring應(yīng)用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進行配置,從而使開發(fā)人員不再需要定義樣板化的配置。通過這種方式,Spring Boot致力于在蓬勃發(fā)展的快速應(yīng)用開發(fā)領(lǐng)域(rapid application development)成為領(lǐng)導(dǎo)者。
SpringBoot可以與經(jīng)典的Java開發(fā)工具一起使用或者作為命令行工具安裝。無論如何,需要JavaSDK1.6或者更高版本,本項目用到的是JDK1.8版本。
3系統(tǒng)分析
3.1可行性分析
通過對本信息化在線教學(xué)平臺實行的目的初步調(diào)查和分析,提出可行性方案并對其一一進行論證。我們在這里主要從技術(shù)可行性、經(jīng)濟可行性、操作可行性等方面進行分析。
3.1.1技術(shù)可行性
本信息化在線教學(xué)平臺采用Spring Boot框架,JAVA作為開發(fā)語言,是基于WEB平臺的B/S架構(gòu)系統(tǒng)。
(1)Java提供了穩(wěn)定的性能、優(yōu)秀的升級性、更快速的開發(fā)、更簡便的管理、全新的語言以及服務(wù)。整個系統(tǒng)幫用戶做了大部分不重要的瑣碎的工作。
(2)基于B/S模式的系統(tǒng)的開發(fā)已發(fā)展日趨成熟。
(3)眾所周知,Java是面向?qū)ο蟮拈_發(fā)語言。程序開發(fā)員可以在Eclipse平臺上面方便的使用一些已知的解決方案。 ???
因此,信息化在線教學(xué)平臺在開發(fā)技術(shù)上具有很高可行性,且開發(fā)人員掌握了一定的開發(fā)技術(shù),所以此系統(tǒng)的開發(fā)技術(shù)具有可行性。
3.1.2經(jīng)濟可行性
本信息化在線教學(xué)平臺采用的軟件都是開源的,這樣能夠削減很多的精力和資源,降低開發(fā)成本。同時對計算機的配置要求也極低,即使是淘汰下來的計算機也能夠滿足需要,因此,本系統(tǒng)在經(jīng)濟上是完全具有可行性的,所以在經(jīng)濟上是十分可行的。
3.1.3操作可行性
本信息化在線教學(xué)平臺的界面簡單易操作,用戶只要平時有在用過電腦,都能進行訪問和操作。本系統(tǒng)具有易操作、易管理、交互性好的特點,在操作上是非常簡單的,因此在操作上具有很高的可行性。
綜上所述,此系統(tǒng)開發(fā)目標(biāo)已明確,在技術(shù)、經(jīng)濟和操作方面都具有很高的可行性,并且投入少、功能完善、管理方便,因此系統(tǒng)的開發(fā)是完全可行的。
3.2系統(tǒng)性能分析
3.2.1 系統(tǒng)安全性
此信息化在線教學(xué)平臺要嚴(yán)格控制管理權(quán)限,具體要求如下:
(1)要想對信息化在線教學(xué)平臺進行管理,首先要依靠用戶名和密碼在系統(tǒng)中登陸,無權(quán)限的用戶不可以通過任何方式登錄系統(tǒng)和對系統(tǒng)的任何信息和數(shù)據(jù)進行查看,這樣可以保證系統(tǒng)的安全可靠性和準(zhǔn)確性。
(2)在具體實現(xiàn)中對不同的權(quán)限進行設(shè)定,不同權(quán)限的用戶在系統(tǒng)中登陸后,不可以越級操作。
3.2.2 數(shù)據(jù)完整性
(1)所有記錄信息要保持全面,信息記錄內(nèi)容不可以是空。
(2)各種數(shù)據(jù)間相互聯(lián)系要保持正確。
(3)相同數(shù)據(jù)在不同記錄中要保持一致。
3.3系統(tǒng)界面分析
目前,界面設(shè)計已經(jīng)成為對軟件質(zhì)量進行評價的一條關(guān)鍵指標(biāo),一個好的用戶界面可以使用戶使用系統(tǒng)的信心和興趣增加,從而使工作效率提高,JSP技術(shù)是將JAVA語言作為腳本語言的,JSP網(wǎng)頁給整個服務(wù)器端的JAVA庫單元提供了一個接口用來服務(wù)HTTP的應(yīng)用程序。創(chuàng)建動態(tài)頁面比較方便??蛻艚缑媸侵杠浖到y(tǒng)與用戶交互的接口,往往涵蓋輸出、輸入、人機對話的界面格式等。
1.輸出設(shè)計
輸出是由電腦對輸入的基本信息進行解決,生成高質(zhì)量的有效信息,并使之具有一定的格式,提供給管理者使用,這是輸出設(shè)計的主要責(zé)任和目標(biāo)。
系統(tǒng)開發(fā)的過程與實施過程相反,并不是從輸入設(shè)計到輸出設(shè)計,而是從輸出設(shè)計到輸入設(shè)計。這是由于輸出表格與使用者直接相聯(lián)系,設(shè)計的目的應(yīng)當(dāng)是確保使用者可以很方便的使用輸出表格,并且可以將各部門的有用信息及時的反映出來。輸出設(shè)計的準(zhǔn)繩是既要整體琢磨不同管理層的所有需要,又要簡潔,不要提供給用戶不需要的信息。
2.輸入設(shè)計
輸入數(shù)據(jù)的收集和錄入是比較麻煩的,需要非常多的人力和一定設(shè)備,而且經(jīng)常出錯。一旦輸入系統(tǒng)的數(shù)據(jù)不正確,那么處理后的輸出就會擴大這些錯誤,因此輸入的數(shù)據(jù)的準(zhǔn)確性對整個系統(tǒng)的性能起著決定性意義。
輸入設(shè)計有以下幾點原則:
1)輸入量應(yīng)盡量保持在能夠滿足處理要求的最低限度。輸入量越少,錯誤率就會越少,數(shù)據(jù)的準(zhǔn)備時間也越少。
2)應(yīng)盡可能的使輸入的準(zhǔn)備以及輸入的過程進行時比較方便,這樣使錯誤的發(fā)生率降低。
3)應(yīng)盡量早檢查輸入數(shù)據(jù)(盡量接近原數(shù)據(jù)發(fā)生點),以便使錯誤更正比較及時。
4)輸入數(shù)據(jù)盡早地記錄成其處理所需的形式,以防止數(shù)據(jù)由一種介質(zhì)轉(zhuǎn)移到另一種介質(zhì)時需要轉(zhuǎn)錄而可能發(fā)生的錯誤。
3.4系統(tǒng)流程和邏輯
圖3-3登錄流程圖
圖3-4修改密碼流程圖
4系統(tǒng)概要設(shè)計
4.1概述
本系統(tǒng)采用B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu))和基于Web服務(wù)兩種模式,是一個適用于Internet環(huán)境下的模型結(jié)構(gòu)。只要用戶能連上Internet,便可以在任何時間、任何地點使用。系統(tǒng)工作原理圖如圖4-1所示:
圖4-1系統(tǒng)工作原理圖
4.2系統(tǒng)結(jié)構(gòu)
本系統(tǒng)是基于B/S架構(gòu)的網(wǎng)站系統(tǒng),設(shè)計的功能結(jié)構(gòu)圖如下圖所示:
圖4-2管理員功能結(jié)構(gòu)圖
4.3.數(shù)據(jù)庫設(shè)計
4.3.1數(shù)據(jù)庫實體
概念設(shè)計的目標(biāo)是設(shè)計出反映某個組織部門信息需求的數(shù)據(jù)庫系統(tǒng)概念模式,數(shù)據(jù)庫系統(tǒng)的概念模式獨立于數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)、獨立于數(shù)據(jù)庫管理系統(tǒng)(DBMS)、獨立于計算機系統(tǒng)。
概念模式的設(shè)計方法是在需求分析的基礎(chǔ)上,用概念數(shù)據(jù)模型(例如E-R模型)表示數(shù)據(jù)及數(shù)據(jù)之間的相互聯(lián)系,設(shè)計出反映用戶信息需求和處理需求的數(shù)據(jù)庫系統(tǒng)概念模式。概念設(shè)計的目標(biāo)是準(zhǔn)確描述應(yīng)用領(lǐng)域的信息模式,支持用戶的各種應(yīng)用,這樣既容易轉(zhuǎn)換為數(shù)據(jù)庫系統(tǒng)邏輯模式,又容易為用戶理解。數(shù)據(jù)庫系統(tǒng)概念模式是面向現(xiàn)實世界的數(shù)據(jù)模型,不能直接用于數(shù)據(jù)庫系統(tǒng)的實現(xiàn)。在此階段,用戶可以參與和評價數(shù)據(jù)庫系統(tǒng)的設(shè)計,從而有利于保證數(shù)據(jù)庫系統(tǒng)的設(shè)計與用戶的需求相吻合。在概念模式的設(shè)計中,E-R模型法是最常見的設(shè)計方法。本系統(tǒng)的E-R圖如下圖所示:
(1)管理員信息的實體屬性圖如下:
圖4.12 ?管理員信息實體屬性圖
(2)留言板信息實體屬性圖如圖4.13所示:
圖4.13??留言板信息實體屬性圖
(3)學(xué)校公告信息實體屬性圖如圖4.14所示:
圖4.14?學(xué)校公告信息實體屬性圖
4.3.2數(shù)據(jù)庫設(shè)計表
信息化在線教學(xué)平臺需要后臺數(shù)據(jù)庫,下面介紹數(shù)據(jù)庫中的各個表的詳細(xì)信息:
表4.1 教師
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
zhanghao |
varchar(200) |
否 |
賬號 |
|
mima |
varchar(200) |
否 |
密碼 |
|
xingming |
varchar(200) |
否 |
姓名 |
|
bianhao |
varchar(200) |
是 |
NULL |
編號 |
xingbie |
varchar(200) |
是 |
NULL |
性別 |
nianling |
int(11) |
是 |
NULL |
年齡 |
shouji |
varchar(200) |
是 |
NULL |
手機 |
shenfenzheng |
varchar(200) |
是 |
NULL |
身份證 |
zhaopian |
varchar(200) |
是 |
NULL |
照片 |
表4.2 教學(xué)信息
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
kechenghao |
varchar(200) |
是 |
NULL |
課程號 |
kechengming |
varchar(200) |
是 |
NULL |
課程名 |
kechengxiangqing |
longtext |
是 |
NULL |
課程詳情 |
kechengshizhang |
int(11) |
是 |
NULL |
課程時長 |
jiaoshixingming |
varchar(200) |
是 |
NULL |
教師姓名 |
zhaopian |
varchar(200) |
是 |
NULL |
照片 |
表4.3 留言板
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
userid |
bigint(20) |
否 |
留言人id |
|
username |
varchar(200) |
是 |
NULL |
用戶名 |
content |
longtext |
否 |
留言內(nèi)容 |
|
reply |
longtext |
是 |
NULL |
回復(fù)內(nèi)容 |
表4. 4學(xué)校公告
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
title |
varchar(200) |
否 |
標(biāo)題 |
|
introduction |
longtext |
是 |
NULL |
簡介 |
picture |
varchar(200) |
否 |
圖片 |
|
content |
longtext |
否 |
內(nèi)容 |
表4.5 管理員表
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
username |
varchar(100) |
否 |
用戶名 |
|
password |
varchar(100) |
否 |
密碼 |
|
role |
varchar(100) |
是 |
管理員 |
角色 |
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
新增時間 |
表4.6 學(xué)生
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
xuehao |
varchar(200) |
否 |
學(xué)號 |
|
mima |
varchar(200) |
否 |
密碼 |
|
xingming |
varchar(200) |
否 |
姓名 |
|
xingbie |
varchar(200) |
是 |
NULL |
性別 |
nianling |
int(11) |
是 |
NULL |
年齡 |
shouji |
varchar(200) |
是 |
NULL |
手機 |
shenfenzheng |
varchar(200) |
是 |
NULL |
身份證 |
zhaopian |
varchar(200) |
是 |
NULL |
照片 |
表4.7 學(xué)生成績
字段 |
類型 |
空 |
默認(rèn) |
注釋 |
id?(主鍵) |
bigint(20) |
否 |
主鍵 |
|
addtime |
timestamp |
否 |
CURRENT_TIMESTAMP |
創(chuàng)建時間 |
xuehao |
varchar(200) |
是 |
NULL |
學(xué)號 |
xingming |
varchar(200) |
是 |
NULL |
姓名 |
kemu1chengji |
int(11) |
是 |
NULL |
科目1成績 |
kemu2chengji |
int(11) |
是 |
NULL |
科目2成績 |
kemu3chengji |
int(11) |
是 |
NULL |
科目3成績 |
kemu4chengji |
int(11) |
是 |
NULL |
科目4成績 |
5系統(tǒng)詳細(xì)實現(xiàn)
5.1 管理員模塊的實現(xiàn)
5.1.1?學(xué)生信息管理
信息化在線教學(xué)平臺的系統(tǒng)管理員可以管理學(xué)生信息檢,可以對學(xué)生信息信息添加修改刪除以及查詢操作。具體界面的展示如圖5.1所示。
圖5.1?學(xué)生信息管理界面
5.1.2?教師信息管理
系統(tǒng)管理員可以查看對教師信息信息進行添加,修改,刪除以及查詢操作。具體界面如圖5.2所示。
圖5.2?教師信息信息管理界面
5.2 教師模塊的實現(xiàn)
5.2.1 學(xué)生成績管理
教師可以對學(xué)生成績信息進行修改,刪除以及查詢操作。界面如下圖所示:
圖5.3?學(xué)生成績信息管理界面
5.2.1 留言板
老師可以對留言板信息進行回復(fù)。界面如下圖所示:
圖5.4 留言板管理界面
5.3?學(xué)生模塊的實現(xiàn)
5.3.1 學(xué)生注冊管理
學(xué)生注冊后才可以登錄。界面如下圖所示:
圖5.5 學(xué)生注冊界面
5.3.2 留言反饋
學(xué)生登錄后可以在留言反饋里面提交留言。界面如下圖所示:
圖5.6 留言反饋信息界面
6系統(tǒng)測試
6.1概念和意義
測試的定義:程序測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。測試(Testing)的任務(wù)與目的可以描述為:
目的:發(fā)現(xiàn)程序的錯誤;
任務(wù):通過在計算機上執(zhí)行程序,暴露程序中潛在的錯誤。
另一個預(yù)測是相關(guān)的術(shù)語叫糾錯(Debugging)。它的目的與任務(wù)可以規(guī)定為:
目的:定位和糾正錯誤;
任務(wù):消除軟件故障,保證程序的可靠運行。測試與糾錯的關(guān)系,可以用圖6-1的數(shù)據(jù)流圖來說明。圖中表明,每一次測試都要準(zhǔn)備好若干必要的測試數(shù)據(jù),與被測試程序一道送入計算機執(zhí)行。通常把一次程序執(zhí)行需要的測試數(shù)據(jù),稱為一個“測試用例(Test Case)。每一個測試用例產(chǎn)生一個相應(yīng)的“測試結(jié)果”。如果它與“期望結(jié)果”不想符合,便說明程序中存在錯誤,需要用糾錯來改正。
圖6.1測試與糾錯信息流程
6.2特性
(1)挑剔性
測試是為了證明程序有錯,而不是證明程序無錯。因此,對于被測程序就是要“純毛求疵”,就是要“雞蛋里挑骨頭”。
(2)復(fù)雜性
測試儀程序則比較容易,這其實是一個誤區(qū)。設(shè)計測試用力是一項需要細(xì)致和高度技巧的高能工作,稍有不慎就會顧此失彼,發(fā)生不應(yīng)用得數(shù)樓。
(3)不徹底性
實際測試都是不徹底的,當(dāng)然不能夠保證測試后的程序不存在遺漏的錯誤。
(4)經(jīng)濟性
通場這種測試稱為“選擇測試(Selective Testing)”。為了降低測試成本,選擇測試用力是應(yīng)注意遵守“經(jīng)濟性”的原則。
6.3重要性
軟件測試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測試學(xué)僅處于運行維護階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。近來,軟件工程界趨向于一種新的觀點,即認(rèn)為軟件生命周期每一階段中都應(yīng)包含測試,從而檢驗本階段的成果是否接近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯誤并加以修正,如果不在早期階段進行測試,錯誤的延時擴散常常會導(dǎo)致最后成品測試的巨大困難。
6.4測試方法
首先我們來說界面測試,界面測試是為了使程序在不同的的操作平臺上能夠運行界面,并且能夠保持原來的風(fēng)格。我把完整程序拷貝到Windows 7環(huán)境下,似的程序運行正常,運行界面上的字體圖片等設(shè)置都能夠保持得非常好。不出現(xiàn)字體變形等情況!
其次進行功能測試。該系統(tǒng)測試采用的是單元測試,集成測試,完善性測試等多種方式進行測試。
經(jīng)過測試,所有功能都能得以實現(xiàn),沒有任何變形。至此,在功能的測試上也已經(jīng)比較圓滿的完成了。
由于經(jīng)驗不足,寫代碼時出現(xiàn)了一些考慮不周的系統(tǒng)缺陷,寫代碼的時候會出現(xiàn)與設(shè)想不一致,比如說代碼不規(guī)范導(dǎo)致接口與接口之間出現(xiàn)問題,功能與客戶的要求不符合,這樣導(dǎo)致產(chǎn)品不能過關(guān),無法交付。所以產(chǎn)品在上線前必須反復(fù)測試,經(jīng)過反復(fù)測試,修改,再測試,再修改,產(chǎn)品才能夠不斷完善。在整個系統(tǒng)測試中,根據(jù)需求文檔和設(shè)計文檔,逐一對功能進行檢測并寫好測試用例,有效避免殘片缺陷,因為產(chǎn)品出現(xiàn)缺陷不僅影響功能,而且可以導(dǎo)致數(shù)據(jù)的不準(zhǔn)確,導(dǎo)致產(chǎn)品質(zhì)量的降低,經(jīng)過測試,才能使得產(chǎn)品的穩(wěn)定性和成熟度得到極大的提升,產(chǎn)品質(zhì)量也才有保證。
6.5?功能測試
功能測試主要包括五項內(nèi)容:適用性、準(zhǔn)確性、可操作性、依從性、安全性。
本系統(tǒng)功能測試如表6.1所示:
表6.1 ?系統(tǒng)功能測試
測試內(nèi)容 |
測試結(jié)果 |
適用性 |
好 |
準(zhǔn)確性 |
好 |
可操作性 |
好 |
依從性 |
好 |
安全性 |
好 |
6.6可用性測試
可用性測試用于檢測系統(tǒng)的可操作性、可理解性、可學(xué)習(xí)性等方面內(nèi)容。具體測試方面如表6.2所示。
表6.2 系統(tǒng)可用性測試
測試項 |
測試人員的評價 |
窗口移動、大小改變、關(guān)閉等操作是否正常 |
是 |
操作模塊是否友好 |
是 |
模塊、提示內(nèi)容等文字描述是否正確 |
是 |
模塊布局是否協(xié)調(diào)、合理 |
是 |
模塊的狀態(tài)是否正確(對選中項能否發(fā)生對應(yīng)切換) |
是 |
鼠標(biāo)、鍵盤操作是否支持 |
是 |
所需數(shù)據(jù)項是否正確顯示 |
是 |
操作流程是否合理 |
是 |
是否提供幫助信息 |
是 |
6.7性能測試
性能測試主要通過模擬系統(tǒng)運行環(huán)境,測試系統(tǒng)性能是否符合客戶需求。性能測試的重要技術(shù)指標(biāo)就是:系統(tǒng)運行速度、網(wǎng)絡(luò)響應(yīng)時間和支持并發(fā)節(jié)點數(shù)。
1)系統(tǒng)運行速度:通過在不同計算機上試運行本系統(tǒng),沒有發(fā)現(xiàn)有任何遲滯、停頓現(xiàn)象。
2)網(wǎng)絡(luò)響應(yīng)時間:網(wǎng)絡(luò)響應(yīng)時間主要包括網(wǎng)絡(luò)最小響應(yīng)時間、平均響應(yīng)時間、最大響應(yīng)時間三個參數(shù)。經(jīng)過測試,在網(wǎng)絡(luò)運營良好狀態(tài)下,NBA局域網(wǎng)內(nèi)響應(yīng)時間三參數(shù)為:1/2/6s,NBA外網(wǎng)響應(yīng)時間三參數(shù)為3/7/12s,符合客戶需求,屬于用戶心理可承受范圍。
3)支持并發(fā)節(jié)點數(shù):經(jīng)過模擬環(huán)境測試,本系統(tǒng)在并發(fā)節(jié)點達46個時,網(wǎng)絡(luò)運營速度會發(fā)生較大波動,延遲時間10秒左右,符合客戶需求。
6.8測試分析
本網(wǎng)站設(shè)計時借鑒了國內(nèi)外優(yōu)秀網(wǎng)站的優(yōu)點,從界面到系統(tǒng)設(shè)計都保證了用戶能夠方便操作。系統(tǒng)的主要特點和優(yōu)點歸納如下:
(1)本系統(tǒng)用的移置性和針對性都比較高,因為針對性高可以提供更好的服務(wù)而移置性可以在多個系統(tǒng)上運行,更給客戶帶來了極大的方便。
(2)該完整內(nèi)容全面,管理方便可以及時的全面的處理各種錯誤,異常,這樣避免了很多因用戶的馬虎操作而出現(xiàn)的失誤,其操作方便,用戶界面友好,能夠上網(wǎng)的人都可以很好的進行操作。
6.9測試結(jié)果分析
經(jīng)過對上述測試結(jié)果分析,本系統(tǒng)符合用戶需求。所有基本功能點實現(xiàn),操作簡單,操作流程簡單合理,產(chǎn)品運行性能良好,是一款值得推廣的信息化在線教學(xué)平臺。
結(jié)論
在這次畢業(yè)設(shè)計中遇到的最困難的方面就是在數(shù)據(jù)庫方面的知識,在剛開始進行畢業(yè)設(shè)計的時候感覺十分困難,根本不知道該從何處下手,但不斷的堅持,設(shè)計最終被完成。無論多么的困難,只要能夠堅持下來,善于去找到好的材料來研究,在研究中充分利用資源,沒有困難是不會被成功解決的。
在開發(fā)系統(tǒng)的過程中,本人運用到了JSP技術(shù)和平時學(xué)習(xí)中所了解的一些技術(shù),通過實現(xiàn)這些技術(shù),大大提高了整個系統(tǒng)的性能。在論文中這些技術(shù)都做了比較詳細(xì)的介紹。本系統(tǒng)還存在很多缺點和不完善的地方,例如有些細(xì)節(jié)上做的還不夠完善,有些功能模塊還需要加強。在今后的日子里,能夠?qū)@些不足進行改善。
通過這次最終的畢業(yè)設(shè)計,平時所學(xué)到的知識不僅融合了,而且獲得了許多計算機知識。在整個設(shè)計過程中明白了許多東西,也培養(yǎng)獨立工作能力,樹立信心,對自己能力的工作能力,我相信以后會學(xué)習(xí)和工作生活中有至關(guān)重要的作用。同時也大大提高了手的能力,使其難以充分體會探索的樂趣和成功的創(chuàng)作過程,設(shè)計過程中汲取的東西,是一筆寶貴的財富。
回顧過去做畢業(yè)設(shè)計的整個過程,充滿了付出和收獲,但是當(dāng)你看到成果的時候的感覺,是一種難以用言語表達的喜悅之感這些在畢業(yè)設(shè)計過程中學(xué)習(xí)到的東西將會使我終身受益!
最后,感謝指導(dǎo)老師的關(guān)心和指導(dǎo),在我畢業(yè)設(shè)計的整個過程中,他給與了我很多的幫助和講解,在導(dǎo)師的幫助下我的畢業(yè)設(shè)計才能如此順利的完成。
致謝語
經(jīng)過幾個多月的不斷學(xué)習(xí),我的畢業(yè)設(shè)計終于如期完成。此次畢業(yè)設(shè)計是對我們?nèi)粘K鶎W(xué)計算機理論知識的一次綜合性評測,也是將理論應(yīng)用到實踐的一項考察。
首先我要感謝此次指導(dǎo)我的老師,是他的及時糾正我在設(shè)計當(dāng)中出現(xiàn)的問題,使得我的設(shè)計高質(zhì)量完成。指導(dǎo)老師在我本次信息化在線教學(xué)平臺的開發(fā)過程中,為程序、框架的設(shè)計、代碼等方面以及論文設(shè)計提供了很多寶貴的意見,并且為我推薦了許多相關(guān)的資料,他的指導(dǎo)和建議使我受益匪淺,通過老師的耐心輔導(dǎo)和指點,我的論文順利完成,在此,我表示深刻的感謝。
我也要感謝幫助過我的同學(xué)們,和我一起探討論文的不足,給我的設(shè)計提出寶貴的建議,在這次設(shè)計中他們的幫助使得我的設(shè)計更加完善更加具體。
最后,我也要感謝學(xué)校為我們提供了一個良好的學(xué)校環(huán)境。祝愿學(xué)校的領(lǐng)導(dǎo)指導(dǎo)老師以及和我一起奮斗的同學(xué)們工作順利,事業(yè)有成,也要祝愿學(xué)校的前景更加輝煌。
參考文獻
[1]付昕. 基于B/S模式倉庫管理系統(tǒng)的實現(xiàn)[J].山東省農(nóng)業(yè)管理干部學(xué)院學(xué)報, 2010, 27(4):166-168
[2] 雷文華, 薛小文. MATLAB和Servlet在網(wǎng)絡(luò)數(shù)據(jù)處理中的應(yīng)用[J]. 電子測試, 2010, (11):81-86.
[3] 黃艷峰. 在Java語言中實施“案例教學(xué)”的研究與探索[J]. 電腦知識與技術(shù), 2010, 6(5):1148-1149
[4] 王玉英. 基于JSP的MySQL數(shù)據(jù)庫訪問技術(shù)[J]. 現(xiàn)代計算機:專業(yè)版, 2010, 19(14):63-66
[5] 趙鋼. JSP Servlet+EJB的Web模式應(yīng)用研究[J]. 電子設(shè)計工程, 2013, 21(13):47-49
[6] David L.Anderson.Managing ?Information Systems.清華大學(xué)出版社,2002:16
[7] 王家華.軟件工程[M],沈陽:東北大學(xué)出版社,2011:46
[8] 張孝祥,徐明華.軟件開發(fā)課堂.清華大學(xué)出版社,2009:55
[9] 崔洋.MySQL數(shù)據(jù)庫應(yīng)用從入門到精通.中國鐵道出版社,2013:27
[10] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論.高等教育出版社, 2006:16
[11] 崔洋.MySQL數(shù)據(jù)庫應(yīng)用從入門到精通.中國鐵道出版社,2013:27
[12] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論.高等教育出版社, 2006:16
[13] 張海潘.軟件工程導(dǎo)論.清華大學(xué)出版社,2008:86
[14] 黃艷峰. 在Java語言中實施“案例教學(xué)”的研究與探索[J]. 電腦知識與技術(shù), 2010, 6(5):1148-1149文章來源:http://www.zghlxwxcb.cn/news/detail-826818.html
[15] 王玉英. 基于JSP的MySQL數(shù)據(jù)庫訪問技術(shù)[J]. 現(xiàn)代計算機:專業(yè)版, 2010, 19(14):63-66文章來源地址http://www.zghlxwxcb.cn/news/detail-826818.html
核心代碼展示
/**
* 公告通知
* 后端接口
* @author
* @email
* @date 2021-03-09 11:33:59
*/
@RestController
@RequestMapping("/news")
public class NewsController {
@Autowired
private NewsService newsService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,NewsEntity news, HttpServletRequest request){
EntityWrapper<NewsEntity> ew = new EntityWrapper<NewsEntity>();
PageUtils page = newsService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, news), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,NewsEntity news, HttpServletRequest request){
EntityWrapper<NewsEntity> ew = new EntityWrapper<NewsEntity>();
PageUtils page = newsService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, news), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( NewsEntity news){
EntityWrapper<NewsEntity> ew = new EntityWrapper<NewsEntity>();
ew.allEq(MPUtil.allEQMapPre( news, "news"));
return R.ok().put("data", newsService.selectListView(ew));
}
/**
* 查詢
*/
@RequestMapping("/query")
public R query(NewsEntity news){
EntityWrapper< NewsEntity> ew = new EntityWrapper< NewsEntity>();
ew.allEq(MPUtil.allEQMapPre( news, "news"));
NewsView newsView = newsService.selectView(ew);
return R.ok("查詢公告通知成功").put("data", newsView);
}
/**
* 后端詳情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
NewsEntity news = newsService.selectById(id);
return R.ok().put("data", news);
}
/**
* 前端詳情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
NewsEntity news = newsService.selectById(id);
return R.ok().put("data", news);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody NewsEntity news, HttpServletRequest request){
news.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(news);
newsService.insert(news);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody NewsEntity news, HttpServletRequest request){
news.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(news);
newsService.insert(news);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody NewsEntity news, HttpServletRequest request){
//ValidatorUtils.validateEntity(news);
newsService.updateById(news);//全部更新
return R.ok();
}
/**
* 刪除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
newsService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<NewsEntity> wrapper = new EntityWrapper<NewsEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
int count = newsService.selectCount(wrapper);
return R.ok().put("count", count);
}
}
到了這里,關(guān)于【網(wǎng)站項目】079信息化在線教學(xué)平臺的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!