畢業(yè)設(shè)計(jì)項(xiàng)目 | 袁庭新老師帶你從零搭建JavaWeb課程管理系統(tǒng)
袁老師新課《JavaWeb課程管理系統(tǒng)-前后端分離版項(xiàng)目實(shí)戰(zhàn)》上線,該課程提供了一個(gè)全面的學(xué)習(xí)體驗(yàn),采用前后端分離的架構(gòu)設(shè)計(jì)。后端畢業(yè)設(shè)計(jì)項(xiàng)目,帶你從零搭建JavaWeb課程管理系統(tǒng)。
01 項(xiàng)目背景
1.1 項(xiàng)目背景介紹
對(duì)于傳統(tǒng)的教育或培訓(xùn)公司,在管理教學(xué)教務(wù)課程時(shí)采用Excel表格進(jìn)行管理。這種管理方式容易導(dǎo)致數(shù)據(jù)丟失或者產(chǎn)生誤差等。因此需有一款在線的課程管理系統(tǒng)來(lái)支撐。
而將要開發(fā)這款課程管理系統(tǒng)比以往傳統(tǒng)的人工管理方式,更具有安全性和快捷性,更方便我們的管理。對(duì)的整個(gè)教務(wù)變動(dòng)等進(jìn)行綜合管理和快速查詢。為了節(jié)省在教務(wù)管理花費(fèi)的人力和物力,同時(shí)便于公司掌握這方面的詳細(xì)情況,有助于提高整個(gè)公司的教育水平和管理水平。
1.2 可行性分析
主要設(shè)計(jì)的就是課程管理、營(yíng)銷信息、配置課時(shí)等功能。在技術(shù)上采用JavaWeb的技術(shù)體系來(lái)進(jìn)行搭建,主體的思路采用前后端分離的思想進(jìn)行開展和開發(fā)。前段主要是使用HTML、CSS、JavaScript、Vue技術(shù);后段則采用Servlet、JDBC、MySQL的技術(shù)體系來(lái)進(jìn)行搭建。在技術(shù)上,現(xiàn)有成熟的技術(shù)生態(tài)圈來(lái)進(jìn)行支撐,從而確保項(xiàng)目是可行的并開發(fā)的。
02 技術(shù)方案
2.1 開發(fā)平臺(tái)
開發(fā)平臺(tái)介紹:

2.2 前端技術(shù)選型
前端技術(shù)選型說(shuō)明。

2.3 后端技術(shù)選型
后端技術(shù)選型說(shuō)明。

2.4 設(shè)計(jì)思想
應(yīng)用程序的開發(fā)主要包含兩部分板塊。第一部分的板塊是服務(wù)器端代碼開發(fā),第二板塊是前端技術(shù)開發(fā)。
服務(wù)器端主要采用JavaWeb的技術(shù)體系來(lái)進(jìn)行設(shè)計(jì)。在MVC的分層思想下,使用JDBC來(lái)操作數(shù)據(jù)庫(kù)的數(shù)據(jù),使用Servlet作為與前端通信的橋梁技術(shù)來(lái)搭建。向前段傳遞統(tǒng)計(jì)的數(shù)據(jù)采用JSON格式的數(shù)據(jù)來(lái)完成,需要借助阿里巴巴的FastJson外部的依賴包來(lái)完成數(shù)據(jù)的打包JSON進(jìn)行發(fā)送。
客戶端采用的是HTML5、CSS3、JavaScript負(fù)責(zé)搭建前段頁(yè)面,而數(shù)據(jù)的加載和渲染采用Vue技術(shù)體系來(lái)完成。在進(jìn)行異步數(shù)據(jù)通信時(shí),需要借助于Axios技術(shù)來(lái)完成請(qǐng)求和數(shù)據(jù)的相應(yīng)操作。
2.5 前后端分離開發(fā)
前后端分離已成為互聯(lián)網(wǎng)項(xiàng)目開發(fā)的業(yè)界標(biāo)準(zhǔn)使用方式,將前端和后端的開發(fā)進(jìn)行解耦。并且前后端分離會(huì)為以后的大型分布式架構(gòu)、微服務(wù)架構(gòu)、多端化服務(wù)(各種客戶端,比如瀏覽器、車載終端、安卓、IOS等)打下堅(jiān)實(shí)的基礎(chǔ)。
前后端分離的核心思想就是前端HTML頁(yè)面通過(guò)AJAX調(diào)用后端的API接口,并通過(guò)JSON數(shù)據(jù)進(jìn)行交互。

03 功能介紹
教育管理系統(tǒng)主要包含課程管理、營(yíng)銷信息、配置課時(shí)等功能。下面依次進(jìn)行不同弄能模塊的介紹。
3.1 課程管理
課程管理的主要核心功能有:

1.課程信息的展示。

2.課程基本信息錄入。

3.課程銷售信息與課程分享信息。

4.課程內(nèi)容信息錄入。

5.文章狀態(tài)變更設(shè)置。

3.2 營(yíng)銷管理
營(yíng)銷信息 (營(yíng)銷信息其實(shí)就是課程的具體信息)的主要核心功能有:

章節(jié)信息的展示效果見下圖:

3.3 配置課時(shí)
配置課時(shí) (配置課時(shí)指的就是對(duì)課程內(nèi)容的配置, 課程內(nèi)容就包括了 章節(jié)信息和課時(shí)信息)的主要核心功能有:
1.添加課程章節(jié)。
2.以樹形結(jié)構(gòu)的下拉列表方式展示課程對(duì)應(yīng)的章節(jié)與課時(shí)信息。
3.修改課程章節(jié)。

4.課程章節(jié)章節(jié)狀態(tài)的設(shè)置。

04 數(shù)據(jù)庫(kù)設(shè)計(jì)
目前針對(duì)教育管理系統(tǒng),涉及到4張表的操作,分別是課程表、章節(jié)表、課時(shí)表以及對(duì)應(yīng)的課程媒體表等。表的相互依賴關(guān)系見下:

05 開發(fā)設(shè)計(jì)
所有的模塊開發(fā)采用接口API的形式進(jìn)行,下面舉一個(gè)例子說(shuō)明其中某一個(gè)模塊開發(fā)的主要核心API規(guī)范:
1.名稱:? findCourseList
2.描述:? 查詢課程列表信息
3.URL地址:?
4.請(qǐng)求方式: GET
5.請(qǐng)求參數(shù)列表:

6.響應(yīng)結(jié)果字段信息。

7.響應(yīng)結(jié)果示例。