基於SSM框架的畢業設計管理系統的設計與實現(附資源下載)

我的畢業設計就叫畢業設計管理系統的設計與實現,哈哈

 

目錄

1.摘要

2.需求分析

3.數據庫設計

4.功能模塊的設計與實現

5.項目截圖

6.項目源碼


1.摘要

畢業設計是本科教育的最後一個環節,整個過程包括課題擬定與審覈、師生雙選、開題報告、文檔審覈、中期檢查、畢業答辯等多個環節,是一項系統而複雜的工作。開發一個適合本校的畢業設計管理系統,不僅能夠極大地減少教務管理人員的工作量,還能較大地提高學生和教師的效率。本系統採用B/S模式,主要開發工具爲Eclipse(Oxygen.1a Release),用到的編程語言有Java、JavaScript和JSP,數據庫採用MySQL 5.7,服務器則用的Apache Tomcat 9.0。前端頁面的編寫基於bootstrap,整個項目基於SSM框架。

2.需求分析

系統的組織架構如圖所示,三種用戶根據自己不同的權限對課題、文檔、成績、公告、任務五種數據信息進行處理,不同用戶角色再根據這些數據信息進行交互通過課題進行交互,並且圍繞着文檔進行數據的傳遞和處理等。

系統的功能模塊如圖所示,每個模塊各有幾個子功能模塊。

本系統包含三種用戶:學生、教師和管理員。通過本系統,學生可以獲取指導教師和管理員發佈的相關教學信息和教學資源;教師可以進行畢設進度的日常管理,發佈任務、上傳資料、審覈文檔等;管理員可以進行系統的管理和維護,並對教師、學生、課題和文檔進行管理,確保系統的正常運行。系統總共分爲3個模塊:

1.學生模塊

學生登錄系統後進入該模塊,在該模塊中,學生能夠修改個人資料和登錄密碼,選擇感興趣的課題及導師,下載導師上傳的相關參考資料,上傳自己已經完成的文檔,查看發佈的公告、任務和自己的階段成績等。

2.教師模塊

教師登錄系統後進入該模塊,在該模塊中,教師能夠修改個人資料和登錄密碼,選擇學生,上傳擬好的課題題目給管理員審覈,發佈階段任務,上傳相關資料給學生參考,下載學生上傳的階段文檔並審覈和打分,查看公告及發佈新公告等。

3.管理員模塊

管理員登錄系統後進入該模塊,在該模塊中,管理員可以增刪查改導師和學生的信息,審覈教師上傳的課題,發佈公告,查看各種信息,查看各種數據分析的結果和圖表。

3.數據庫設計

數據分析:

本系統的主要數據表爲存儲學生、教師、文檔、課題數據集的四個表。其餘表大多作爲外鍵關聯用於完善四張表的信息。

概念設計:

數據庫主要圍繞學生、教師、 課題、文檔4個實體進行數據處理。即系統只要處理好這4個實體的數據,就可以完成系統的絕大部分功能並讓畢業設計管理的整個流程順利進行下去。其餘的數據表則是圍繞這4個實體相應展開,進行一些擴展和補充,以完善整個數據庫的結構並加快數據庫對請求的響應速度。

重要E-R圖:

數據庫文檔處理的E-R如圖所示

數據庫文檔處理的E-R如圖所示。

表列表:

數據庫中一共設計了15張表,和學生相關的表有6張(包括學生信息、開題報告、文檔成績、畢設進度、學生疑問等),和教師相關的表有4張(包括教師信息、任務書、階段任務、課題申報等),文檔有1張表,課題涉及2張表,還有2張表屬於公共信息表,用於進行一些補充以完善數據庫。數據庫的表清單如下表。

序號

物理表名

中文名稱

1

t_announcement

公告表

2

t_department

學院表

3

t_doubt

疑問表

4

t_major

專業表

5

t_student

學生表

6

t_student_opening_report_task_book

學生開題報告表

7

t_student_progress

學生進度通知填寫表

8

t_student_score

學生成績表

9

t_teacher

教師表

10

t_teacher_opening_report_task_book

教師開題報告表

11

t_teacher_progress_notification

教師階段任務表

12

t_thesis_information

文檔提交表

13

t_thesis_title

教師提交課題表

14

t_topic

選題信息表

15

t_user

用戶表

數據字典:

公告表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

context

公告內容

varchar

 

3

inputMan

發佈人

varchar

 

4

lastModifyTime

上次修改時間

datetime

 

疑問表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

studentId

學生id

int

3

studentDoubt

學生疑問

varchar

 

4

answer

疑問解答

varchar

 

學生表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

studentNo

學生學號

varchar

 

3

studentName

學生姓名

varchar

 

4

sex

性別

varchar

 

5

majorId

專業id

int

6

grade

年級

varchar

 

7

inputMan

錄入人

varchar

 

8

lastModifyTime

上次修改時間

datetime

 

9

phone

電話

varchar

 

學生開題報告表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

studentId

學生id

int

3

OpenResport

學生開題報告

varchar

 

4

TaskBook

學生任務書

varchar

 

5

description

描述

varchar

 

6

completion

完成情況

int

 

               

學生成績表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

studentId

學生id

int

3

thesisResult

分數結果

int

 

4

inputMan

打分人

varchar

 

5

rank

分數等級

char

 

6

status

狀態

int

 

7

condition

審覈資格

int

 

導師表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

teacherNo

教師編號

varchar

 

3

teacherName

教師姓名

varchar

 

4

departmentId

所屬學院id

int

5

sex

性別

varchar

 

6

inputMan

錄入人

varchar

 

7

lastModifyTime

上次修改時間

datetime

 

8

phone

電話

varchar

 

教師開題報告表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

teacherId

教師id

varchar

3

openingReport

開題報告

varchar

 

4

taskBook

任務書

datetime

 

5

description

描述

 

 

6

thesisTitleId

課題id

 

教師階段任務表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

context

任務內容

varchar

 

3

inputMan

發佈人

varchar

 

4

inputTime

發佈時間

datetime

 

5

studentId

學生id

int

6

teacherId

教師id

int

7

state

狀態

int

 

8

time

任務時間

int

 

文檔提交表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

studentId

學生id

int

3

thesisText

文檔信息

varchar

 

4

status

文檔狀態

int

 

5

description

描述

varchar

 

選題信息表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

thesisName

課題名稱

varchar

 

3

teacherId

教師id

int

4

submitTime

提交時間

datetime

 

5

status

狀態

int

 

6

inputMan

提交人

varchar

 

7

description

課題描述

varchar

 

學院表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

departmentName

學院名稱

varchar

 

3

description

學院描述

varchar

 

專業表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

majorName

專業名稱

varchar

 

3

departmentId

所屬學院id

int

4

description

專業描述

varchar

 

學生進度通知填寫表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

progressId

階段id

int

3

context

階段任務內容

varchar

 

教師提交課題表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

thesisName

課題名稱

varchar

 

3

teacherId

教師id

int

4

submitTime

提交時間

datetime

 

5

status

狀態

int

 

6

inputMan

提交人

varchar

 

7

description

課題描述

varchar

 

用戶表

序號

列名

中文名稱

數據類型

主鍵

非空

外鍵

1

id

 

int

 

2

userNo

用戶賬號

varchar

 

3

password

密碼

int

 

4

permission

用戶權限

char(1)

 

4.功能模塊的設計與實現

本系統依據學生、導師、管理員三種不同用戶角色的需求,分爲了三個大的功能模塊,三種用戶角色在各自的模塊進行操作,可以通過課題進行與其他兩種用戶角色之間的交互,並且圍繞着文檔進行各種數據(用戶信息、文檔信息、課題信息)的傳遞和處理等,這就形成了系統的體系結構,管理員發佈課題給學生,學生選擇課題呈現給導師,導師自擬課題向管理員申報,如圖所示。

同時三種用戶可對五種數據信息進行不同的處理(增刪查改的權限不同),表現在系統上就是擁有不同的功能模塊,所以分爲三個大的模塊,每個模塊有相應的小的功能模塊,系統的功能結構如圖。

5.項目截圖

學生模塊部分頁面

 

 

教師模塊部分頁面

 

 

管理員模塊部分頁面

 

 

6.項目源碼

項目源碼已上傳,https://download.csdn.net/download/ace_2/11818569

下載好像需要積分,需要源碼的可以關注公衆號“編程江湖”,回覆“畢業設計管理系統”領取源碼。

也提供CSDN其他資源的下載服務。

後續會放到github上

這是我大學寫的,現在看來好多地方比較糙,還有些小問題。不過編程思想是體現出來了的,邏輯也比較清晰,學生看還是沒啥問題的。有問題可以找我交流哦。

截圖:

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章