湘北晨星高校宿舍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
湘北晨星高校宿舍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
湘北晨星高校宿舍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
湘北晨星高校宿舍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
湘北晨星高校宿舍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

目錄

1引言1

1.1項(xiàng)目開發(fā)背景1

1.2開發(fā)技術(shù)簡(jiǎn)介1

1.2.1Java簡(jiǎn)介1

1.2.2Java的運(yùn)行原理1

1.3開發(fā)工具簡(jiǎn)介2

2需求分析2

2.1功能需求描述2

2.2非功能需求描述3

2.3需求用例建模3

2.3.1宿管功能模塊的用例4

2.3.2學(xué)生功能模塊用例6

2.3.3樓宇功能模塊的用例7

2.3.4宿舍功能模塊的用例8

3系統(tǒng)概要設(shè)計(jì)9

3.1系統(tǒng)設(shè)計(jì)原則9

3.2系統(tǒng)框架設(shè)計(jì)9

3.3系統(tǒng)功能設(shè)計(jì)10

3.3.1宿管模塊功能設(shè)計(jì)11

3.3.2學(xué)生模塊功能設(shè)計(jì)12

3.3.3樓宇模塊功能設(shè)計(jì)12

3.3.4宿舍模塊功能設(shè)計(jì)13

3.4數(shù)據(jù)庫(kù)設(shè)計(jì)14

3.4.1設(shè)計(jì)原則14

3.4.2概念設(shè)計(jì)15

3.4.3邏輯設(shè)計(jì)15

3.4.4數(shù)據(jù)字典16

I

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

4系統(tǒng)詳細(xì)設(shè)計(jì)18

4.1宿管模塊子功能設(shè)計(jì)18

4.1.1宿管模塊子功能說(shuō)明18

4.1.2宿管模塊子功能詳細(xì)設(shè)計(jì)18

4.2學(xué)生模塊子功能設(shè)計(jì)19

4.2.1學(xué)生模塊子功能說(shuō)明19

4.2.2學(xué)生模塊子功能詳細(xì)設(shè)計(jì)19

4.3樓宇模塊子功能設(shè)計(jì)20

4.3.1樓宇模塊子功能說(shuō)明20

4.3.2樓宇模塊子功能詳細(xì)設(shè)計(jì)20

4.4宿舍模塊子功能設(shè)計(jì)21

4.4.1宿舍模塊子功能說(shuō)明21

4.4.2宿舍模塊子功能詳細(xì)設(shè)計(jì)21

5系統(tǒng)實(shí)現(xiàn)22

5.1宿管子模塊實(shí)現(xiàn)22

5.1.1宿管子模塊界面設(shè)計(jì)22

5.1.2宿管子模塊核心代碼實(shí)現(xiàn):23

5.2學(xué)生子模塊實(shí)現(xiàn)28

5.2.1學(xué)生子模塊界面設(shè)計(jì)28

5.2.2學(xué)生子模塊核心代碼實(shí)現(xiàn)29

5.3樓宇子模塊實(shí)現(xiàn)34

5.3.1樓宇子模塊界面設(shè)計(jì)34

5.3.2樓宇子模塊核心代碼實(shí)現(xiàn)35

5.4宿舍子模塊實(shí)現(xiàn)40

5.4.1宿舍子模塊界面設(shè)計(jì)40

5.4.2宿舍子模塊核心代碼實(shí)現(xiàn)41

6系統(tǒng)測(cè)試46

6.1宿管模塊功能測(cè)試47

II

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

6.2學(xué)生模塊功能測(cè)試48

6.3樓宇模塊功能測(cè)試49

6.4宿舍模塊功能測(cè)試50

7設(shè)計(jì)小結(jié)51

參考資料53

III

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

湘北晨星高校宿舍管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

1引言

在計(jì)算機(jī)互聯(lián)網(wǎng)快速發(fā)展下,信息管理系統(tǒng)軟件的發(fā)展及其廣泛的應(yīng)用,

系統(tǒng)相關(guān)的各種技術(shù)手段已逐漸趨于成熟,相關(guān)應(yīng)用在各個(gè)領(lǐng)域也有所發(fā)展。

1.1項(xiàng)目開發(fā)背景

隨著計(jì)算機(jī)深入入門生活,提高工作效率,各個(gè)高校開始使用應(yīng)用信息管

理系統(tǒng),以便處理學(xué)校事務(wù)。高等教育的普及,宿舍學(xué)生越來(lái)越多,隨之而來(lái)

的就是管理難度的增加。如果使用原始人工統(tǒng)計(jì)信息分配管理,需要信息處理

工作量非常大,一個(gè)高效的宿舍管理系統(tǒng)是很有必要的。宿舍管理系統(tǒng)高校是

為學(xué)院學(xué)生宿舍專門開發(fā)設(shè)計(jì)的,系統(tǒng)管理人員比較熟悉計(jì)算機(jī)簡(jiǎn)單操作系統(tǒng),

就能快速上手。系統(tǒng)對(duì)硬件配置要求不高,使用簡(jiǎn)單。該系統(tǒng)為學(xué)生宿舍的信

息化提供了一個(gè)很好的平臺(tái),也有助于解決高校宿舍信息化不高的現(xiàn)狀,提高

學(xué)生宿舍管理水平。

1.2開發(fā)技術(shù)簡(jiǎn)介

該宿舍管理系統(tǒng)軟件采用B/S架構(gòu),使用語(yǔ)言編程語(yǔ)言java,采用

SpringBoo+Mybatis-plus與vue前后端集成

1.2.1Java簡(jiǎn)介

Java是世界上使用最廣泛的編程語(yǔ)言之一。Java最初由SunMicrosystems

在1990年代開發(fā),用于開發(fā)從Web應(yīng)用程序到移動(dòng)應(yīng)用程序到批處理應(yīng)用程序

的所有內(nèi)容。Java最初是一種純粹的面向?qū)ο蟮恼Z(yǔ)言,但現(xiàn)在已經(jīng)發(fā)展成為一

種多范例語(yǔ)言,可以高度適應(yīng)任何情況。擁有龐大的開發(fā)人員社區(qū)和支持庫(kù),Jav

a是開發(fā)幾乎所有類型的應(yīng)用程序的理想選擇。

1.2.2Java的運(yùn)行原理

Java在被Java編譯器(Javac.exe)編譯后,并不會(huì)被轉(zhuǎn)換為機(jī)器碼,而

是被轉(zhuǎn)換為一種中間形式,也就是一個(gè)字節(jié)碼,這個(gè)字節(jié)碼又被JAVA虛擬機(jī)翻

譯,轉(zhuǎn)換為一臺(tái)機(jī)器碼,最后通過(guò)操作系統(tǒng)傳遞給CPU來(lái)執(zhí)行。Java的跨平臺(tái)

是以JVM虛擬機(jī)為媒介來(lái)完成的,在此基礎(chǔ)上,Java的源程序通過(guò)編譯器對(duì)其

1

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

進(jìn)行編譯,從而產(chǎn)生出虛擬機(jī)可以理解的字節(jié)碼,而虛擬機(jī)則會(huì)把要被執(zhí)行的

字節(jié)碼交給解釋器,由解釋器將這些字節(jié)碼轉(zhuǎn)換成具體的系統(tǒng)上的機(jī)器代碼。

再把它放到一臺(tái)特殊的計(jì)算機(jī)上。每個(gè)平臺(tái)上的解釋程序各不相同,但虛擬機(jī)

的實(shí)現(xiàn)卻是一樣的

1.3開發(fā)工具簡(jiǎn)介

工具的使用:采用IntelliJIDEA+HBuilderX+WAMP+Mysql+Navicat

Premium

IDEA是一種面向Java程序設(shè)計(jì)的綜合開發(fā)環(huán)境。IntelliJ是目前業(yè)內(nèi)最

優(yōu)秀的Java軟件,特別是在智能代碼輔助,自動(dòng)代碼提示,重構(gòu)等方面有著廣

泛的應(yīng)用;支持JavaEE,支持各種版本工具(git,svn,等等),整合

JUnit,CVS;代碼分析,新穎的圖形界面設(shè)計(jì)和其他一些可以稱得上是卓越的。

已經(jīng)有大量的插件被整合到了一起,在后端開發(fā)中,它們基本上能夠滿足全部

的需要。

WAMP是Windows下的,常用來(lái)搭建動(dòng)態(tài)網(wǎng)站源軟件,本身都是各自獨(dú)立的

程序,擁有很高的兼容度,組成了強(qiáng)大的Web應(yīng)用程序平臺(tái),能快速啟動(dòng)mysql

服務(wù)。

mysql其優(yōu)點(diǎn)有:綜合統(tǒng)一,語(yǔ)言簡(jiǎn)潔,易學(xué)易用。

Navicat是一套可靠的數(shù)據(jù)庫(kù)管理工具,圖形界面直觀,提供簡(jiǎn)便的管理數(shù)

據(jù)方法。專門用于簡(jiǎn)化數(shù)據(jù)庫(kù)管理和降低管理成本。

項(xiàng)目開發(fā)技術(shù)路線:

項(xiàng)目采用前后端分離,前端使用Vue,后端使用

Springboot+Mybatis-plus,采用SSM設(shè)計(jì)思想,是標(biāo)準(zhǔn)的MVC設(shè)計(jì)模式,將整

個(gè)系統(tǒng)劃分為顯示層,Controller層,Service層,DAO層四層。

2需求分析

2.1功能需求描述

核心模塊:

1.宿管模塊:在系統(tǒng)管理員權(quán)限下,對(duì)宿管員信息的增刪改查,并且還要

對(duì)宿管的權(quán)限進(jìn)行規(guī)定,記錄到宿舍管理員數(shù)據(jù)表中。

2.學(xué)生模塊:對(duì)學(xué)生信息進(jìn)行管理,進(jìn)行學(xué)生信息的增刪改查。

3.樓宇模塊:在系統(tǒng)管理員的權(quán)限下,對(duì)宿舍樓宇的增刪改查,以及對(duì)樓

2

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

宇進(jìn)行宿管的分配,這一功能在實(shí)現(xiàn)對(duì)樓宇管理的同時(shí)還對(duì)宿管的權(quán)限

范圍進(jìn)行了規(guī)定。

4.宿舍模塊:在系統(tǒng)管理員權(quán)限下,對(duì)宿舍基本信息進(jìn)行增刪改查處理,

幫助管理員對(duì)各宿舍進(jìn)行區(qū)分和記錄

其他功能模塊:

1.學(xué)生遷出登記模塊:該功能具體就是記錄學(xué)生住宿狀態(tài),提供分類查詢,

還可以通過(guò)系統(tǒng)管理員權(quán)限對(duì)于學(xué)生的入住狀態(tài)進(jìn)行更改

2.學(xué)生遷出記錄模塊:該功能具體就是記錄學(xué)生住宿狀態(tài),提供分類查詢,

還可以通過(guò)系統(tǒng)管理員權(quán)限對(duì)于學(xué)生的入住狀態(tài)進(jìn)行更改。

3.學(xué)生缺寢記錄模塊:本功能是宿舍管理系統(tǒng)的特色功能,它是基于學(xué)生

宿舍實(shí)際管理中的需求進(jìn)行設(shè)計(jì)開發(fā)的。實(shí)現(xiàn)了對(duì)于缺寢學(xué)生信息及相對(duì)應(yīng)原

因的輸入,并可以進(jìn)行修改和查詢。

2.2非功能需求描述

本系統(tǒng)的非功能性需求有以下幾個(gè)方面:

(1)高效性:能過(guò)快速響應(yīng)給使用人員。

(2)安全性:安全系統(tǒng)管理人員有不同的權(quán)限設(shè)定

(3)可擴(kuò)展性:系統(tǒng)代碼設(shè)計(jì)有非常搞擴(kuò)展可能,如果將來(lái)出現(xiàn)更多功能

需求

(4)可維護(hù)性:系統(tǒng)應(yīng)具有良好的可維護(hù)性,能方便日后進(jìn)行功能拓展,

在實(shí)現(xiàn)程序時(shí)采用抽象,接口等編程技巧提高系統(tǒng)可維護(hù)性。

(5)易用性:簡(jiǎn)單易用,方便使用人員管理使用。

2.3需求用例建模

通過(guò)對(duì)功能需求的分析,創(chuàng)建以下總體用例模型,如圖2-1所示。

3

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-1湘北晨星高校宿舍管理系統(tǒng)的總體用例模型

總體用例模型,說(shuō)明參與使用人員,該宿舍管理系統(tǒng)主要功能。

2.3.1宿管功能模塊的用例

宿管信息管理功能模塊具有查詢,刪除,添加,宿管員信息。

4

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖2-2宿管模塊功能用例圖

通過(guò)對(duì)圖2-2用例圖得用例的描述表。宿舍模塊用例描述如表2-1所示,

可以進(jìn)行添加,查看,修改,刪除宿管人員信息。

表2-1宿管模塊功能用例描述

項(xiàng)目描述

用例名稱宿管功能模塊測(cè)試

用例標(biāo)識(shí)號(hào)01

參與者管理員

簡(jiǎn)要說(shuō)明系統(tǒng)管理人員對(duì)宿管人員操作

前置條件管理人員正確輸入用戶名和密碼

1.系統(tǒng)管理員打開登錄頁(yè)面

2.系統(tǒng)管理人員成功進(jìn)入首頁(yè)

基本事件流3.點(diǎn)擊導(dǎo)航欄塊宿管模塊

4.進(jìn)行詳細(xì)相關(guān)功能頁(yè)面操作

5.用例終止

其他事件流可以隨時(shí)按“取消”,“確定”按鈕

5

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

異常事件流提示錯(cuò)誤信息,參與人確認(rèn)

后置條件進(jìn)入的主界面Hme.vue主頁(yè)面加載數(shù)據(jù)

2.3.2學(xué)生功能模塊用例

學(xué)生功能模塊,具有查詢,修改,添加學(xué)生入住宿舍以及相關(guān)信息。

圖2-3學(xué)生模塊功能用例圖

通過(guò)對(duì)圖2-3用例圖得用例的描述表。學(xué)生模塊用例描述如表2-2所示,

可以進(jìn)行添加,查看,修改,刪除學(xué)生人員信息。

表2-2學(xué)生模塊功能用例描述

項(xiàng)目描述

用例名稱學(xué)生模塊

用例標(biāo)識(shí)號(hào)02

參與者系統(tǒng)管理人員

簡(jiǎn)要說(shuō)明系統(tǒng)管理員對(duì)學(xué)生信息操作

前置條件系統(tǒng)管理人員正確登錄

基本事件流1.系統(tǒng)管理人員成功進(jìn)入首頁(yè)

6

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

2.點(diǎn)擊導(dǎo)航欄學(xué)生模塊

3.進(jìn)行對(duì)學(xué)生入住信息相關(guān)操作

4.用例終止

其他事件流可以隨時(shí)按“取消”,“確定”按鈕

異常事件流提示錯(cuò)誤信息,參與人確認(rèn)

后置條件進(jìn)入的主界面Hme.vue主頁(yè)面加載數(shù)據(jù)

2.3.3樓宇功能模塊的用例

樓宇功能模塊,具有查詢,刪除,添加樓棟以及樓棟管理人員。

圖2-4樓宇模塊功能用例圖

通過(guò)對(duì)圖2-4用例圖得到用例的描述表。樓宇模塊用例描述如表2-3所示,

可以進(jìn)行添加,查看,修改,刪除樓宇信息。

表2-3樓宇模塊功能用例描述

項(xiàng)目描述

用例名稱樓宇模塊

用例標(biāo)識(shí)號(hào)03

7

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

參與者系統(tǒng)管理人員

簡(jiǎn)要說(shuō)明系統(tǒng)管理員對(duì)樓棟以及樓棟宿舍管理信息操作

前置條件系統(tǒng)管理人員正確登錄

1.系統(tǒng)管理人員成功進(jìn)入首頁(yè)

2.點(diǎn)擊導(dǎo)航欄樓棟模塊

基本事件流

3.進(jìn)行對(duì)樓棟信息相關(guān)操作

4.用例終止

其他事件流可以隨時(shí)按“取消”,“確定”按鈕

異常事件流提示錯(cuò)誤信息,參與人確認(rèn)

后置條件進(jìn)入的主界面Hme.vue主頁(yè)面加載數(shù)據(jù)

2.3.4宿舍功能模塊的用例

宿舍功能模塊,具有顯示宿舍床位、剩余宿舍,刪除,添加宿舍信息。

圖2-5宿舍模塊功能用例圖

通過(guò)對(duì)圖2-5用例圖得到用例的描述表。宿舍功能模塊用例描述如表2-4

所示,可以進(jìn)行添加,查看,修改,刪除學(xué)生人員信息。

8

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

表2-4宿舍模塊功能用例描述

項(xiàng)目描述

用例名稱宿舍模塊

用例標(biāo)識(shí)號(hào)04

參與者系統(tǒng)管理人員

簡(jiǎn)要說(shuō)明系統(tǒng)管理員對(duì)樓棟以及宿舍房間宿舍管理信息操作

前置條件系統(tǒng)管理人員正確登錄

1.系統(tǒng)管理人員成功進(jìn)入首頁(yè)

2.點(diǎn)擊導(dǎo)航欄宿舍模塊

基本事件流

3.進(jìn)行對(duì)宿舍房間信息相關(guān)操作

4.用例終止

其他事件流可以隨時(shí)按“取消”,“確定”按鈕

異常事件流提示錯(cuò)誤信息,參與人確認(rèn)

后置條件進(jìn)入的主界面Home.vue主頁(yè)面加載數(shù)據(jù)

3系統(tǒng)概要設(shè)計(jì)

3.1系統(tǒng)設(shè)計(jì)原則

本宿舍系統(tǒng)采用B/S架構(gòu),即瀏覽器/服務(wù)器架構(gòu)。B/S架構(gòu)的系統(tǒng)無(wú)須特

別安裝客戶端軟件,只要連接網(wǎng)絡(luò),登錄Web瀏覽器即可。

3.2系統(tǒng)框架設(shè)計(jì)

根據(jù)系統(tǒng)的需求分析、用例建模分析結(jié)合開發(fā)平臺(tái)的特點(diǎn)設(shè)計(jì)該宿舍系統(tǒng)

的系統(tǒng)架構(gòu)模型,如圖3-1所示。

9

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-1湘北晨星高校宿舍管理系統(tǒng)整體架構(gòu)模型

3.3系統(tǒng)功能設(shè)計(jì)

系統(tǒng)模塊化結(jié)構(gòu)設(shè)計(jì)工作是在子系統(tǒng)劃分的基礎(chǔ)上,在進(jìn)一步地劃分,將

它逐層的分解成多個(gè)大小相同、具有一定獨(dú)立性的模塊,以便程序設(shè)計(jì)工作的

同時(shí),有加強(qiáng)了數(shù)據(jù)庫(kù)之間的聯(lián)系,使系統(tǒng)更加的完美。根據(jù)需求和用例建模

分析,本文確定了該宿舍管理系統(tǒng)系統(tǒng)的核心功能模塊,包括宿管模塊、學(xué)生

模塊、樓宇模塊和宿舍模塊管理等。該學(xué)生宿舍管理系統(tǒng)的功能結(jié)構(gòu)圖如圖3-2

所示。

10

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-2湘北晨星高校宿舍系統(tǒng)功能結(jié)構(gòu)圖

3.3.1宿管模塊功能設(shè)計(jì)

針對(duì)系統(tǒng)功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到各子模塊相關(guān)功能描述,

功能描述使用功能流程圖描述。

當(dāng)系統(tǒng)管理員登陸成功后,在該模塊下,能夠進(jìn)行宿舍管理員信息增刪改

查操作,如下圖3-3。

11

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-3宿管模功能流程圖

3.3.2學(xué)生模塊功能設(shè)計(jì)

當(dāng)管理員登入成功后,這個(gè)模塊的功能是添加入住宿舍的學(xué)生信息,必要

時(shí)進(jìn)行修改和刪除,如下圖3-4。

圖3-4學(xué)生模塊功能流程圖

3.3.3樓宇模塊功能設(shè)計(jì)

這一模塊的功能主要是對(duì)宿舍樓宇信息進(jìn)行管理,如對(duì)宿舍樓宇的名稱、

簡(jiǎn)介、管理員等信息進(jìn)行管理,必要時(shí)進(jìn)行增加、查詢和刪除,如下圖3-5

12

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-5樓宇模塊功能流程圖

3.3.4宿舍模塊功能設(shè)計(jì)

這一模塊的功能主要包括對(duì)宿舍的信息進(jìn)行登記、查詢操作,必要時(shí)進(jìn)行

修改和刪除操作,該模塊流程圖如3-6所示。

13

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖3-6宿舍模塊功能流程圖

3.4數(shù)據(jù)庫(kù)設(shè)計(jì)

數(shù)據(jù)庫(kù)設(shè)計(jì)往往是系統(tǒng)設(shè)計(jì)中最為核心的一個(gè)步驟。其設(shè)計(jì)的優(yōu)良程度直

接影響系統(tǒng)的性能以及執(zhí)行效率。

3.4.1設(shè)計(jì)原則

為取得較好的設(shè)計(jì)效果,進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)需要遵從以下原則:

1.標(biāo)準(zhǔn)化原則

數(shù)據(jù)庫(kù)設(shè)計(jì)務(wù)必要遵照統(tǒng)一的設(shè)計(jì)標(biāo)準(zhǔn)與命名規(guī)范。具備統(tǒng)一設(shè)計(jì)分類與

14

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

編碼規(guī)范的數(shù)據(jù)庫(kù)不僅設(shè)計(jì)清晰直觀,更有利于后期數(shù)據(jù)庫(kù)及程序的維護(hù),為以

后項(xiàng)目可擴(kuò)展性提供條件。

2.冗余原則

以往數(shù)據(jù)庫(kù)的設(shè)計(jì)要求不允許有冗余,要盡可能的滿足3NF。然而,在系

統(tǒng)運(yùn)行過(guò)程中,滿足3NF的數(shù)據(jù)庫(kù)設(shè)計(jì)并不能高效運(yùn)行。復(fù)雜的表間關(guān)系,會(huì)

降低訪問數(shù)據(jù)庫(kù)執(zhí)行的效率;過(guò)低的范式標(biāo)準(zhǔn),又會(huì)導(dǎo)致數(shù)據(jù)庫(kù)數(shù)據(jù)。所以,

在數(shù)據(jù)庫(kù)設(shè)計(jì)中,適當(dāng)?shù)娜哂嘣O(shè)計(jì)(允許派生性冗余設(shè)計(jì),杜絕重復(fù)性冗余設(shè)

計(jì)),找到冗余與數(shù)據(jù)處理速度的平衡點(diǎn),常??梢约忍岣咚俣?,又能。

3.4.2概念設(shè)計(jì)

在數(shù)據(jù)庫(kù)概念設(shè)計(jì)的過(guò)程中,E-R圖是概念數(shù)據(jù)模型的高層描述所使用的數(shù)

據(jù)模型或模式圖,表述實(shí)體聯(lián)系模式圖形式的數(shù)據(jù)模型提供了圖形符號(hào)。根據(jù)

湘北晨星高校宿舍管理系統(tǒng)數(shù)據(jù)進(jìn)行分析,其E-R圖如下圖3-7所示。

圖3-7湘北晨星高校宿舍管理系統(tǒng)E-R圖

3.4.3邏輯設(shè)計(jì)

針對(duì)ER模型,通過(guò)數(shù)據(jù)實(shí)體屬性、實(shí)體間關(guān)系的全面分析,結(jié)合湘北晨星

高校宿舍管理系統(tǒng)系統(tǒng)的實(shí)際需求,根據(jù)E-R圖轉(zhuǎn)化為關(guān)系模式的轉(zhuǎn)換方法,

建立起了本系統(tǒng)的關(guān)系模式,具體轉(zhuǎn)化后的關(guān)系模式如下:

系統(tǒng)管理員(System_admin)表(ID、系統(tǒng)用戶名、密碼、系統(tǒng)人員姓名、

電話)

學(xué)生(Student)表(ID、學(xué)號(hào)、宿舍號(hào)、姓名、性別、班級(jí)、入住狀態(tài))

15

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

樓宇信息(Building)表(ID、樓棟名稱、樓棟介紹、宿管Id)

宿舍(Domitory)表(ID、樓棟ID、宿舍號(hào)、宿舍類型、空余床位、電話)

缺寢(Absent)表(缺寢信息編號(hào)ID、樓棟ID、學(xué)生ID、宿管ID、日期、缺寢

原因)

宿管信息(Dormitory_admin)表(宿管編號(hào)ID、賬號(hào)、宿管員密碼、宿管員

姓名、宿管員性別、宿管員電話號(hào)碼)

3.4.4數(shù)據(jù)字典

本宿舍管理系統(tǒng)使用MYSQL數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)表相關(guān)信息,具體內(nèi)容如下:

表3-1系統(tǒng)管理員表

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是否Int(11)

系統(tǒng)用戶名Username否是varchar(20)

密碼Password否是varchar(20)

姓名Name否是varchar(20)

電話Telephone否否varchar(20)

表3-2學(xué)生表結(jié)

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是是Int(11)

學(xué)生編號(hào)Number否是varchar(20)

學(xué)生姓名Name否否varchar(20)

性別Gnder否否varchar(20)

宿舍編號(hào)Drmitory_id否否int(11)

狀態(tài)State否否varchar(20)

表3-3樓宇信息表結(jié)

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是是int(11)

樓棟名稱Name否否varchar(50)

varchar(1000

樓棟介紹Introduction否否

)

宿管IDAdmin_id否否int(11)

16

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

表3-4宿舍表

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是是int(11)

樓棟IDBuilding_id否否int(11)

宿舍號(hào)Introduction否否varchar(20)

房間類型Type否否int(11)

空余床位Available否否int(11)

電話Telephone否否varchar(20)

表3-5缺寢表

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是是int(11)

樓棟IDBuilding_id否否int(11)

宿舍IDDormitory_id否否varchar(20)

學(xué)生IDStudent_id否否int(11)

Dormitory_admin_

宿管ID否否int(11)

id

日期Create_date否否varchar(20)

缺勤原因Reason

表3-6宿管信息表

數(shù)據(jù)項(xiàng)名稱字段名是否主鍵是否非空類型及長(zhǎng)度

IDId是是int(11)

賬號(hào)username否否varchar(20)

密碼password否否varchar(20)

姓名name否否varchar(20)

性別gender否否varchar(10)

電話號(hào)碼telephone否否varchar(20)

數(shù)據(jù)庫(kù)設(shè)計(jì)總結(jié):根據(jù)上面的需求分析和用例建模分析,構(gòu)建了宿舍管理

系統(tǒng)的主要的功能模塊。

17

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

4系統(tǒng)詳細(xì)設(shè)計(jì)

希望通過(guò)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)系統(tǒng)的詳細(xì)開發(fā)方案,了解該宿管的系統(tǒng)可能存在

的問題,希望通過(guò)系統(tǒng)設(shè)作流的處理現(xiàn)給用戶。

4.1宿管模塊子功能設(shè)計(jì)

4.1.1宿管模塊子功能說(shuō)明

宿管模塊子功能:已登入系統(tǒng)管理員可以在宿舍管理員信息模塊,進(jìn)行宿

舍管理員信息管理,對(duì)舍管理員進(jìn)行增刪改查相關(guān)操作。

4.1.2宿管模塊子功能詳細(xì)設(shè)計(jì)

使用UML序列圖對(duì)需求分析中各子功能的用例進(jìn)行分析與設(shè)計(jì),以下圖

4-1為學(xué)生子模塊的時(shí)序圖。

圖4-1宿管模塊子功能時(shí)序圖

針對(duì)類圖進(jìn)行進(jìn)一步細(xì)化分析,得到該子功能模塊相關(guān)類及方法描述表,

如下表4-1所示。

表4-1宿管模塊子功能相關(guān)類及方法描述表

類名People

描述宿舍管理員信息

18

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

屬性dormitoryAdminService

Login(),

方法

save(),findById(int),update(),deleteById(),list()

4.2學(xué)生模塊子功能設(shè)計(jì)

4.2.1學(xué)生模塊子功能說(shuō)明

學(xué)生模塊子功能:已登入系統(tǒng)管理員可以在學(xué)生模塊,進(jìn)行學(xué)生信息管理,

對(duì)學(xué)生進(jìn)行增刪改查相關(guān)操作。

4.2.2學(xué)生模塊子功能詳細(xì)設(shè)計(jì)

使用UML序列圖對(duì)需求分析中各子功能的用例進(jìn)行分析與設(shè)計(jì),以下圖

4-2為學(xué)生子模塊的時(shí)序圖。

圖4-2學(xué)生模塊子功能時(shí)序圖

針對(duì)類圖進(jìn)行進(jìn)一步細(xì)化分析,得到該子功能模塊相關(guān)類及方法描述表,

如下表4-2所示。

表4-2學(xué)生模塊子功能相關(guān)類及方法描述表

類名StudentController

19

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

描述對(duì)學(xué)生信息管理。

屬性studentService

添加save(),查找findById().修改update(),刪除

方法

deleteById(),list()分頁(yè)

4.3樓宇模塊子功能設(shè)計(jì)

4.3.1樓宇模塊子功能說(shuō)明

樓宇模塊子功能:已登入系統(tǒng)管理員可以在樓宇管理模塊,進(jìn)行樓宇管理,

對(duì)樓棟進(jìn)行增刪改查相關(guān)操作。

4.3.2樓宇模塊子功能詳細(xì)設(shè)計(jì)

使用UML序列圖對(duì)需求分析中各子功能的用例進(jìn)行分析與設(shè)計(jì),以下圖

4-3為樓宇子模塊的時(shí)序圖

圖4-3樓宇模塊子功能時(shí)序圖

針對(duì)類圖進(jìn)行進(jìn)一步細(xì)化分析,得到該子功能模塊相關(guān)類及方法描述表,

如下表4-3所示。

表4-3樓宇模塊子功能相關(guān)類及方法描述表

類名BuildingController

描述對(duì)樓宇理樓棟進(jìn)行增刪改查管理。

屬性buildingService

方法添加save(),查找findById().修改update(),刪除

20

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

deleteById()

4.4宿舍模塊子功能設(shè)計(jì)

4.4.1宿舍模塊子功能說(shuō)明

宿舍子功能模塊:已登入系統(tǒng)管理員可以在學(xué)生模塊,進(jìn)行宿舍管理,對(duì)

宿舍進(jìn)行增刪改查相關(guān)操作。

4.4.2宿舍模塊子功能詳細(xì)設(shè)計(jì)

圖4-4宿舍子模塊功能時(shí)序圖

針對(duì)類圖進(jìn)行進(jìn)一步細(xì)化分析,得到該子功能模塊相關(guān)類及方法描述表,

如下表4-3所示。

表4-4宿舍子模塊功能相關(guān)類及方法描述表

類名DormitoryController

描述對(duì)樓宇理樓棟進(jìn)行增刪改查管理。

屬性buildingService

添加save(),查找findById().修改update(),刪除

方法

deleteById(),availableList()

21

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

5系統(tǒng)實(shí)現(xiàn)

5.1宿管子模塊實(shí)現(xiàn)

5.1.1宿管子模塊界面設(shè)計(jì)

登入界面:如圖5-1所示:該界面主要包括一個(gè)系統(tǒng)管理員和一個(gè)宿舍管理

員員接口。

圖5-1登入界面

系統(tǒng)管理員成功登入,點(diǎn)擊展開宿管模塊,分別點(diǎn)擊添加宿管和宿管管理

如下圖5-2,5-3所示。

圖5-2添加宿管界面

22

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

圖5-3宿管管理界面

5.1.2宿管子模塊核心代碼實(shí)現(xiàn):

步驟1:js驗(yàn)證頁(yè)面表單

<script>

exportdefault{

data(){

return{

category:null,

ruleForm:{

username:'',

password:'',

name:'',

gender:'男',

telephone:''

},

rules:{

username:[

{required:true,message:'請(qǐng)輸入用戶名',trigger:'blur'}

],

password:[

{required:true,message:'請(qǐng)輸入密碼',trigger:'blur'}

],

name:[

{required:true,message:'請(qǐng)輸入姓名',trigger:'blur'}

],

telephone:[

{required:true,message:'請(qǐng)輸入聯(lián)系電話',trigger:'blur'}

]

}

};

23

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

},

methods:{

submitForm(formName){

const_this=this

this.$refs[formName].validate((valid)=>{

if(valid){

axios.post('http://localhost:9090/dormitoryAdmin/save',

_this.ruleForm).then(function(resp){

if(resp.data.code===0){

_this.$alert(_this.ruleForm.username+'添加成功','',{

confirmButtonText:'確定',

callback:action=>{

_this.$router.push('/dormitoryAdminManager')

}

});

}

})

}

});

},

resetForm(formName){

this.$refs[formName].resetFields();

}

}

}

</script>

<script>

exportdefault{

data(){

return{

tableData:null,

currentPage:1,

pageSize:5,

total:null,

key:'',

value:'',

ruleFormm:{

key:'',

value:'',

page:'',

size:3

},

24

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

rules:{

key:[

{required:true,message:'請(qǐng)選擇字段',trigger:'change'}

]

}

}

},

methods:{

submitForm(formName){

const_this=this

//讓翻頁(yè)復(fù)原

_this.currentPage=1

this.$refs[formName].validate((valid)=>{

if(valid){

const_this=this

_this.ruleForm.page=_this.currentPage

axios.get('http://localhost:9090/dormitory/search',{params:

_this.ruleForm}).then(function(resp){

_this.tableData=resp.data.data.data

_this.total=resp.data.data.total

})

}

});

},

page(currentPage){

const_this=this

if(_this.ruleForm.value===''){

axios.get('http://localhost:9090/dormitory/list/'+currentPage+'/'+

_this.pageSize).then(function(resp){

_this.tableData=resp.data.data.data

_this.total=resp.data.data.total

})

}else{

_this.ruleForm.page=_this.currentPage

axios.get('http://localhost:9090/dormitory/search',{params:

_this.ruleForm}).then(function(resp){

_this.tableData=resp.data.data.data

_this.total=resp.data.data.total

})

}

},

25

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

edit(row){

this.$router.push('/dormitoryUpdate?id='+row.id)

},

del(row){

const_this=this

this.$confirm('確認(rèn)刪除【'++'】嗎?','提示',{

confirmButtonText:'確定',

cancelButtonText:'取消',

type:'warning'

}).then(()=>{

axios.delete('http://localhost:9090/dormitory/deleteById/'+row.id).then(function(resp)

{

if(resp.data.code===0){

_this.$alert('【'++'】已刪除','',{

confirmButtonText:'確定',

callback:action=>{

location.reload()

}

});

}

});

});

}

},

created(){

const_this=this

axios.get('http://localhost:9090/dormitory/list/1/'+_this.pageSize).then(function(resp){

_this.tableData=resp.data.data.data

_this.total=resp.data.data.total

})

}

}

</script>

步驟2:數(shù)據(jù)傳入后臺(tái)

packagecom.szk.controller;

importcom.szk.entity.DormitoryAdmin;

importcom.szk.form.RuleForm;

importcom.szk.form.SearchForm;

importcom.szk.service.DormitoryAdminService;

importcom.szk.util.ResultVOUtil;

importcom.szk.vo.PageVO;

26

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

importcom.szk.vo.ResultVO;

importorg.springframework.beans.factory.annotation.Autowired;

importorg.springframework.web.bind.annotation.*;

importorg.springframework.stereotype.Controller;

importjava.util.List;

/**

*<p>

*宿舍管理員表前端控制器

*</p>

*

*@authoradmin

*@since2023-02-23

*/

@RestController

@RequestMapping("/dormitoryAdmin")

publicclassDormitoryAdminController{

@Autowired

privateDormitoryAdminServicedormitoryAdminService;

@GetMapping("/login")

publicResultVOlogin(RuleFormruleForm){

ResultVOresultVO=this.dormitoryAdminService.login(ruleForm);

returnresultVO;

}

@PostMapping("/save")

publicResultVOsave(@RequestBodyDormitoryAdmindormitoryAdmin){

booleansave=this.dormitoryAdminService.save(dormitoryAdmin);

if(!save)returnResultVOUtil.fail();

returnResultVOUtil.success(null);

}

@GetMapping("/list/{page}/{size}")

publicResultVOlist(@PathVariable("page")Integerpage,@PathVariable("size")Integer

size){

PageVOpageVO=this.dormitoryAdminService.list(page,size);

returnResultVOUtil.success(pageVO);

}

@GetMapping("/search")

27

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)

publicResultVOsearch(SearchFormsearchForm){

PageVOpageVO=this.dormitoryAdminService.search(searchForm);

returnResultVOUtil.success(pageVO);

}

@GetMapping("/findById/{id}")

publicResultVOfindById(@PathVariable("id")Integerid){

DormitoryAdmindormitoryAdmin=this.dormitoryAdminService.getById(id);

returnResultVOUtil.success(dormitoryAdmin);

}

@PutMapping("/update")//添加宿管

publicResultVOupdate(@RequestBodyDormitoryAdmindormitoryAdmin){

booleanupdate=this.dormitoryAdminService.updateById(dormitoryAdmin);

if(!update)returnResultVOUtil.fail();

returnResultVOUtil.success(null);

}

@DeleteMapping("/deleteById/{id}")//刪除

publicResultVOdeleteById(@PathVariable("id")Integerid){

booleanremove=this.dormitoryAdminService.removeById(id);

if(!remove)returnResultVOUtil.fail();

returnResultVOUtil.success(null);

}

@GetMapping("/list")

publicResultVOlist(){

List<DormitoryAdmin>dormitoryAdminList=this.dormitoryAdminService.list();

returnResultVOUtil.success(dormitoryAdminList);

}

}

5.2學(xué)生子模塊實(shí)現(xiàn)

5.2.1學(xué)生子模塊界面設(shè)計(jì)

點(diǎn)擊學(xué)生模塊,分別點(diǎn)擊添加學(xué)生和學(xué)生管理,界面如下圖5-4,5-5所示。

28

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論