博文谷

位置:首頁 > 實用範文 > 論文

SSH的學生成績資訊管理系統的具體研究論文

論文1.27W

摘要:本系統是Browser/Server的結構, 能夠統一客戶端, 將主要功能實現的核心部分集中在了服務器上。在技術上是以Java、Hibernate、Spring、Struts和MYSQL數據庫來開發和實現的。不但注重系統的實際操作, 系統的佈局簡潔, 功能清晰, 也能夠讓使用者清楚明瞭的進行操作, 符合了學生和老師的需要。本文主要介紹了該系統的具體設計及實現與測試。

關鍵詞:學生成績資訊管理; Browser/Server結構; MYSQL數據庫; 具體設計; 實現與測試;

1系統概要設計

1.1系統總體設計

學生成績管理系統採用了SSH框架進行開發, 共有表現層、業務邏輯層、數據持久層三層。當中MVC框架是由Struts框架來完成, 負責處理系統的整體業務。系統的數據持久層由Hibernate來完成, 它封裝了底層的JDBC, 能將對象直接映射到關係型數據庫中, 如本系統中使用的Mysql數據庫。還提供了面向對象的API, 讓用戶可以方便直觀地操作數據庫。Spring是本系統的業務層組件, 它能方便地管理對象, 利用bean容器對對象進行管理。Spring還能夠幫助Hibernate管理DAO層, 使用註釋編程風格, 它可以寫出優雅的代碼[1,2]。

用戶開啟系統首先面對的是表現層, 表現層是由JSP頁面實現的, 用戶與JSP頁面交互。

1.2系統架構設計

本系統採用的是瀏覽器和服務器結構, 也叫B/S結構設計。本學生成績資訊管理系統面向的對象是管理員 (教師) 和學生, 根據他們的需求分析得知他們使用本系統的方式以瀏覽器爲主, 並不需要客戶端來使用, 因此決定使用B/S結構來設計此係統。

1.3用戶名/口令認證

系統需要根據用戶輸入用戶名和密碼進行驗證的方式來登入, 當用戶輸入了用戶名和密碼之後, 會在數據庫中進行查找, 如果能夠查找到數據並且匹配正確的話則登入成功, 若數據不能匹配, 則根據錯誤資訊提示用戶。

1.4系統開發環境

操作系統:Windows 7

JDK版本:1.7.0

IDE:My Eclipse

WEB框架:J2EE

網絡協議:TCP/IP[3]

服務器:tomcat6[3]

數據庫:mysql5.0;[3]

瀏覽器:Internet Explorer 5.0以上;[3]

前端框架:Java Script

其他開發框架:Hibernate, Struts2, Spring

2系統詳細設計

2.1總體設計目標

實現該學生成績資訊管理系統的幾個主要功能如下:

1.教師統一管理學生的個人資訊、班級資訊、課程資訊、成績資訊, 能夠增刪改查;

2.學生可以管理自己的個人資訊, 能夠檢視修改

3.學生可以管理自己的課程資訊, 能夠檢視修改

4.學生可以檢視自己的學生成績資訊

5.學生可以透過課程資訊來進行相應的選課

2.2 登入模組設計

在用戶進入本系統時首先就是登陸介面, 登陸介面的實現類是Login Action[4,5], 滿足登陸資訊錄入功能。在登陸介面設定兩個文字編輯框, 分別輸入用戶名和密碼, 並設定兩種用戶角色, 分別是管理員和學生。學生學號作爲學生用戶的唯一性標識, 而密碼的.作用是確認這個賬號的歸屬性。

2.3 管理員操作模組設計

在系統中, 老師需要對學生的個人資訊, 班級資訊, 選課資訊, 成績資訊進行管理, 還需要歸納總結出一個總成績, 所以針對管理員部分, 需要設計五個模組, 下面對相關功能進行詳細介紹。

2.3.1 班級資訊管理模組介面及功能設計

班級資訊管理模組的內容包括班級資訊添加和班級資訊查詢這兩個模組。

班級資訊添加介面:包括班級編號、班級名稱、班主任、聯繫電話、成立日期五個text文字編輯框以及儲存和重寫兩個按鈕, 其中在添加班級資訊時班級編號和班級名稱兩項不能爲空, 如果爲空, 點擊儲存時會提示不能爲空, 從而無法完成添加班級資訊的要求。

班級資訊查詢介面:用戶可以根據班級編號、班級名稱、聯繫電話、成立日期中的任何一項進行查詢, 查詢結果以表格的形式呈現給用戶, 並以每一頁顯示三條記錄進行分頁顯示。此介面還有編輯和刪除兩個按鈕, 可以根據用戶需要對班級資訊進行編輯和刪除操作, 充分的滿足用戶的各種需求。 (學生資訊管理、課程資訊管理與班級資訊管理類似, 在此不做介紹了)

2.3.2 成績資訊管理模組介面及功能設計

成績資訊管理模組包括成績資訊添加和查詢兩個模組。

成績資訊添加介面:包括學生學號、課程資訊和成績分數三個小模組。其中用戶需要在學生學號處輸入正確的學生學號並點擊獲取學生資訊按鈕, 點擊後會顯示學生的姓名、性別、班級、出生日期和電話號碼五個資訊, 此時課程資訊處的下拉框裏有了學生所選課程的名稱, 根據學生考試所得分數對成績分數進行錄入, 錄入結束後點擊儲存對該學生課程成績進行儲存。

成績資訊查詢介面:用戶可以根據學生姓名和課程資訊中的任意一項進行查詢, 查詢結果一目瞭然。如果錄入錯誤, 可以點擊編輯或者刪除進行相應的操作, 以滿足用戶的需要。

2.3.3 總成績資訊管理模組介面及功能設計

總成績資訊管理模組包括總成績資訊生成和總成績資訊查詢兩個模組。

總成績資訊管理介面:只有請選擇班級進行總成績的生成一項, 根據下拉框顯示的班級進行對應的選擇, 然後點擊生成總成績按鈕即可生成總成績。

總成績資訊查詢介面:顯示學生各門課程成績, 並在最後生成總成績。該介面也可以對數據進行編輯和刪除, 並可以以Excel表格形式匯出。

2.4 學生操作模組設計

學生登入系統之後主要有三個功能:學生個人資訊檢視和修改, 檢視自己的課程和選課、檢視自己的成績。其中點擊學生成績查詢可以查詢到個人的考試成績, 修改個人資訊一項可以對個人資訊進行編輯修改, 學生選課一項需要選擇想要選擇的課程, 課程資訊可以顯示出課程的名稱, 編號, 講課老師等基本資訊, 根據課程的資訊確定要選擇的課程, 然後點擊確定按鈕完成選課。

2.5.2 數據庫邏輯結構設計

透過對學生成績管理系統的分析, 總結出了以下幾點:

1.用戶只分老師和學生兩種, 並且一個用戶只能有一種身份。

2.教師擁有最進階的全下可以對學生資訊, 課程資訊, 成績資訊, 總成績的管理。

3.學生用戶能夠檢視和修改個人資訊和成績資訊, 能夠檢視成績資訊, 能夠進行選課。

透過以上對用戶需求和系統功能的分析與總結, 根據實際設計了符合條件的數據項和數據結構, 創建7張基本的數據表, 分別爲:管理員資訊表、學生資訊表、班級資訊表、課程資訊表、成績資訊表、選課資訊表、總成績資訊表。由於篇幅原因, 下面只列舉總成績資訊表, 包括數據項:總成績編號、學生學號、總成績。總成績表結構如表1所示。

2.5.3 數據庫物理設計

本系統共使用了7張基本表來滿足項目的基本實現要求, 每一張表之間都存在着相互的關聯, 保證了系統功能的全面和數據資訊存儲的穩定。下面同樣只介紹一下創建總成績資訊表所使用到的SQL語句:

下面對執行上述SQL語句創建的表進行介紹:

3 系統的實現與測試

3.1 系統功能實現

3.1.1 用戶登入

1.設計用戶登陸頁面

用戶的登入頁面包括輸入用戶名和密碼的文字方塊, 以及選擇用戶身份的下拉框, 有管理員和學生兩個選項, 輸入正確的用戶資訊才能進入到對應的系統中去。透過Java Script函數對用戶的輸入資訊進行驗證, 驗證用戶名密碼是否正確, 是否爲空。用戶的登陸頁面, 如圖7所示。

2.用戶登陸Action實現類

當用戶在登入介面中輸入完用戶名和密碼之後, 系統會訪問一個URL爲/Score System/on/Login 。在URL地址有用戶登入是用來驗證用戶身份的方法Check Login () [7]。

在驗證用戶身份方法Check Login () 中, 系統會將用戶輸入過來的的參數強制轉換成Admin類型的對象並賦值於新的Admin類型對象。在驗證用戶登入的操作時, 系統會檢查數據庫中是否有對應的資訊, 如果有資訊的話系統會根據返回的資訊反過來去檢視用戶的角色分類, 從而根據返回分類的不同進入到不同的介面當中去[8,9,10]。

4.配置檔案

在檔案中配置用戶登陸模組所涉及到的元素, 該元素用於指定用戶登陸模組所使用的actionform。在檔案中配置用戶登陸模組所涉及到得元素, 該元素用於完成對頁面的邏輯跳轉工作[11,12,13]。

3.1 系統的測試

考慮到本系統的實際使用是以操作簡單, 功能結構清晰的情況, 本次測試主要是以黑盒測試爲主進行的測試。

1.當不輸入用戶名直接點擊登入時。產生結果如圖10所示。

2.當沒有輸入用戶密碼時, 系統會彈出一個消息框來提示操作者輸入用戶密碼如圖11。

3.當輸入用戶及密碼, 但是用戶名錯誤或者密碼輸入錯誤時, 系統也會彈出一個對話框來提示操作者更改輸入資訊。如圖12。

5總結

本系統採用了JAVA語言進, 並使用了當前流行的、功能強大的Struts、Hibernate和Spring三大框架進行項目開發, 數據庫服務器則選擇了當前流行且使用方便的MYSQL數據庫[14]。目前, 本系統下的各個功能已經全部實現, 即教師端:對學生資訊進行管理、對班級資訊進行管理、對學生選課資訊進行管理、對課程資訊進行管理、對學生成績資訊進行管理;學生端:查詢和修改個人資訊、查詢課程資訊、查詢個人成績、選課[15]。本系統目前在我院成功試執行, 完成了對學生成績資訊的專業化管理的目的。

參考文獻

[1]廖義奎 Web開發之Srtuts編程基礎與實例精講[M].中國電力出版社, 2006:133-137.

[2]陳天河ng集成開發寶典[M].電子工業出版社, 2007:246-249.

[3]孫衛琴, 李洪成at與Java Web開發技術詳解[M].電子工業出版社, 2004:56-61.

[4]張洪偉at Web開發及整合應用[M].北京.清華大學出版社, 2006:10-230.

[5]石志國, 薛爲民, 董潔高等學校計算機語言應用教程[M].清華大學出版社, 2004:190-196.

[6]李剛ts2權威指南:基於Web Work核心的MVC開發[M].電子工業出版社, 2007:93-332.

[7]樑立新.項目實踐精解:基於Struts-Spring-Hibernate的Java應用開發.第2版[M].電子工業出版社, 2008.

[8]郭煦, 闖恩華.中間件技術在Web系統中的應用[J].上海電機學院學報, 2006, 9 (3) :33-45.

[9]孫衛琴網絡編程精解[M].電子工業出版社, 2007:66-70.

[10]邱哲, 王俊標, 馬鬥開發利器:Struts Web設計與開發大全[M].清華大學出版社, 2006:67-72.

[11]Marty Hall, 霍爾, Hall, 等let與JSP權威指南[M].機械工業出版社, 2002.

[12]Manheim M architecture for active DSS[C]//Hawaii International Conference on System Sciences, sion Support and Knowledge Based Systems , 2002:356-365.

[13]Bruce retical Artificial Intelligence[J], 1998, 10 (4) :393-402.

[14]Kang Dynamics[J]uter Netorks, 2002, 39:221-223.

[15]田文濤, 張釗, 張笑冰.基於SSH的學生成績資訊管理系統的設計與分析[J].軟件, 2017, 38 (11) :212-215.