java課程設計-學生成績系統管理


1 功能要求

  • 添加學生功能:姓名、學號、性別、年齡,學號自動生成且學號唯一。
  • 添加學生成績功能:假設每個人都選修了數學、Java與體育。但輸入成績的時候,一般是給所有學生輸入某一門課程的成績。
  • 根據學生學號查找學生成績,並在界面上顯示姓名、學號和成績,學號不存在的給出提示信息。
  • 根據學生姓名(支持模糊匹配)查找學生成績,並在界面上顯示姓名、學號和成績,如果有多個相同姓名學生存在,一起顯示出來,姓名不存在的給出提示信息。
  • 生成學生學習情況報表:報表包含學號、姓名、各科目成績及對應的該科目班級平均值,總成績以及班級總成績平均值。最后以總成績平均值降序在圖形界面輸出,並可將該排序結果按照輸出至"成績表.txt"文件或者excel文件(輸出到Excel文件為特別加分項,可以使用POI技術)。
  • 支持分別對所有學生各科成績畫出柱狀分布圖(可選)。
  • 支持對學生信息的修改與刪除(要在文件或數據庫中有所體現),不能修改學號。
  • 測試:支持隨機生成10萬個學生及其姓名、學號、成績放入文本文件,以進行測試。(學號不能相同,每顆的成績以80分為中心成正態分本)。
  • 支持用戶登錄、驗證操作。

2 團隊名稱、團隊成員介紹、任務分配,團隊成員課程設計博客鏈接(以表格形式呈現),標明組長。

團隊成員 學號 任務分配
李悅(組長) 201921123002 數據庫和數據表的建立和管理,dao模式,測試代碼
農艷潔 201921123005 GUI界面設計,代碼整合
孫瑋羚 201921123006 poi技術導出數據生成excel文件,JFreeChart導出柱狀圖,打包成exe可執行文件

3 本項目的git地址。

git地址傳送

4 項目git提交記錄截圖(要體現出每個人的提交記錄及提交說明)。



5 項目功能架構圖、主要功能流程圖

項目功能架構圖

6 面向對象設計包圖、類圖。如果類太多,可僅列出主要類。

7 項目運行截圖或屏幕錄制

開始運行

教師登錄

查看學生信息

添加

刪除

查找

修改

導出柱狀圖

導出Excel

8 項目關鍵代碼分模塊描述。

8.1 poi技術生成excel文件

從數據庫中提取出各班的數據,放入集合,進行統計,然后生成excel文件

8.2 生成條形圖

JFreeChart建立數據源集合后將所需展示信息統計后進行添加展示

8.3 查找學生信息(模糊查找)

數據庫中提供了模糊查詢語句,select語句中添加like,%可表示任意字符,'like % X%'會查詢出所有所有攜帶X的記錄;

8.4 如何自動生成學號

Student類在第一次被調用的時候,就執行查找數據庫中最大的學號,然后保存到學生類的靜態屬性nextId中。每次調用Student的無參構造方法生成一個學生時,就自動將nextId學號分配給stuId,然后nextId自增,達到自動生成學號的目的。

8.5 測試代碼

調用random的nextGaussian()方法,結合公式Math.sqrt(10)*r.nextGaussian()+80,生成以80為均值的正態分布隨機數,實現成績隨機生成。

9 項目代碼掃描結果及改正。

覆寫方法沒有用@Override注釋:

修改:

10 項目總結(包括不足與展望、想要進一步完成的任務)

本次課程設計對我們而言是一次非常難忘的經歷,雖然其過程非常的痛苦與煎熬,但是經過小組所有成員的共同努力及互相幫助下,這次大作業總算基本完成了。本次課設存在的不足還有很多,比如圖形界面設計的界面切換還不是很流暢,每個界面的寬高不一致;對於學生成績管理系統來說,我們實現的功能還不算多,只是基本完成了要求的功能,並沒有增加功能。總體來說,本次課程設計給我們的收獲很多,不僅讓我們更深刻認識到團隊合作的重要性,也提高了我們的思考能力,讓我們以后會懂得去思考問題,解決問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM