使用Java设计实现一个带有GUI界面的学生成绩管理系统

本文介绍如何使用Java设计并实现一个具有GUI界面的学生成绩管理系统,包括添加、删除、修改学生信息,统计成绩分布,以及数据的文件存储。系统采用SWING或AWT,结合JFreeChart进行图表展示,所有功能代码均为作者原创实现。
部署运行你感兴趣的模型镜像

写在前面: 我是「虐猫人薛定谔」,一个不满足于现状,有梦想,有追求的00后
\quad
本博客主要记录和分享自己毕生所学的知识,欢迎关注,第一时间获取更新。
\quad
不忘初心,方得始终。
\quad

❤❤❤❤❤❤❤❤❤❤


在这里插入图片描述

设计要求

使用Java设计实现一个带有GUI界面的学生成绩管理系统。基本功能包括:

  1. 增添、删除、修改学生基本信息:学号、姓名、出生日期、专业课程分数;

  2. 统计优秀、良好、中等、及格、不及格的人数百分比,并以柱状图、饼图呈现
    【说明:可以使用SWING、AWT自己绘制;也可以使用开源类库,如JFreeChart】

  3. 按学号查询学生及成绩;

  4. 按照成绩分数排序;

  5. 提供数据存储功能(不使用数据库,全部使用流操作文件完成)

在这里插入图片描述

思路

程序界面的主背景使用的是暗灰色(个人比较喜欢的背景颜色),而面板背景用的是亮灰色(与暗灰色形成对比),程序是使用idea开发,除了绘制饼图和柱状图部分用了开源类库JFreeChart外,其余代码均为自己实现。

Main类是该程序的入口,MainFrame类中实现程序的主要框架,该类继承自JFrame,Student类对学生进行抽象,其成员包括学号、姓名、出生日期和课程,其中课程是用HashMap来存放的,Key为课程名,Value为课程成绩。

Management类用一个ArrayList来存放学生,该类对外提供添加学生信息、删除学生信息、修改学生信息、从文件导入学生信息等方法。Resource类为资源加载类,该类加载一些图片资源,这些资源用来装饰面板中的按钮。

为了实现定制排序,分别实现了按照学号、姓名、成绩排序的Comparator类,剩余类均为面板类,这些类继承自JPanel,上面添加相应的组件来实现对应的功能,其中LeftPanel为界面左侧面板,上面放了具有相应功能的按钮,用来控制各个面板之间的切换(通过设置各个面板的可见性来实现)

Panel1 ———— 添加学生信息

Panel2 ———— 删除学生信息

Panel3 ———— 修改学生信息

Panel4 ———— 查询学生信息

Panel5 ———— 统计课程成绩

数据的存储是依靠流操作文件来实现的,Management类和Student类均实现了Serializable接口,在程序窗口关闭之前,会将arrayList(存放学生的容器)写入文件,在程序启动的时候,先将数据文件读入,再启动窗口界面,从而实现数据的存储功能

目录结构

在这里插入图片描述

效果展示

在这里插入图片描述
添加学生信息
在这里插入图片描述
删除学生信息
在这里插入图片描述
修改学生信息
在这里插入图片描述
查找学生信息
在这里插入图片描述
统计成绩
在这里插入图片描述
从文件导入学生信息(文件需要满足指定的格式)
在这里插入图片描述

代码

—> 神奇旅程 <—

在这里插入图片描述

蒟蒻写博客不易,加之本人水平有限,写作仓促,错误和不足之处在所难免,谨请读者和各位大佬们批评指正。
如需转载,请署名作者并附上原文链接,蒟蒻非常感激
名称:虐猫人薛定谔
博客地址:https://blog.youkuaiyun.com/Deep___Learning

您可能感兴趣的与本文相关的镜像

Wan2.2-T2V-A5B

Wan2.2-T2V-A5B

文生视频
Wan2.2

Wan2.2是由通义万相开源高效文本到视频生成模型,是有​50亿参数的轻量级视频生成模型,专为快速内容创作优化。支持480P视频生成,具备优秀的时序连贯性和运动推理能力

基于JAVA学生成绩管理系统设计实现 摘 要:本文按照目前流行的B/S体系结构模式,结合现有的学生成绩管理系统的现状,采用 SQL Server 2000数据库和JAVA技术,设计开发了学生成绩管理系统系统,本系统分为前台页面和后 台管理两大部分,主要实现成绩查询、成绩删除、成绩添加、成绩修改四大主体功能。 在细节方面,着重考虑了用户添加成绩、成绩查询两方面的简易操作,力求为客户带来 方便。 关键词:B/S模式;JAVA;SQL Server Abstract:This according to the popular B / S architecture model, combined with the current status of student achievement management system using SQL Server 2000 database and JAVA technology, design and development of student achievement management system, the system is divided into front page and back office management two parts, the main accomplishment query results to delete, add scores, results modify the four main functions. In detail, the focus to consider the user to add results, performance query both easy to operate, and strive to bring convenience for customers. Key words:B/S mode;JAVA;SQL Server 近年来,随着高校的扩招,运用常规的方法对学生成绩的管理变得越来越困难,因此 学校迫切的需要一种高效的系统来帮助其管理学生的成绩。学生成绩管理系统拥有其高 效和易于操作的性能,在学校对学生成绩管理活动全过程中起着举足轻重的作用。基于 JAVA设计的并结合SQL Server数据库的学生成绩管理系统是一种便于管理人员操作的方便的成绩管理系统,它 摈弃了常规的成绩管理的弊端并且结合了现代技术使高校扩招带给学校学生数量的增加 学生成绩的增加得到有力的解决。 1. 系统的需求分析 系统的可行性分析和需求分析应在弄清用户需求的基础上,提出可供选择的方案,进 行调查研究、信息流程分析和数据收集,对开发中出现的各种问题进行估计,便于在开 发中能正确处理。 1. 可行性分析 1.1.1 学校可行性 现在,计算机的价格已经十分低廉,性能却有非常的好,本系统的开发可以为代替人 工进行许多繁杂的劳动,节省资源提高学生管理工作的效率,同时还能具有较高的安全 性。同时本系统所枆资源小,学校的电脑都能满足,所以本系统在运行上是可行的。 1.1.2 技术可行性 目前在网络方面,非常流行的就是B/S模式加上java的技术,在后台数据库方面采用 SQL Server2000数据库,本系统依靠当前的技术水平完全能够实现。 1.2 需求分析 本系统在满足学校学生成绩管理职能的基本要求,为学生、教师等各层次管理者提供 数据支持并且提供方便灵活的数据查询功能。本系统还对操作人员的技能要求比较低, 操作方便,能够实现方便的扩展,满足学校发展的需要能够保障管理数据的安全,准确 。本系统的功能需求如表1.1所示。 表1.1 功能需求表 "功能序号 "功能名称 "功能说明 " "1 "成绩添加 "包含学生信息、成绩信息的添加 " "2 "成绩查询 "客户可以通过学生名称、成绩和添加时间进" " " "行查询 " "3 "成绩删除 "客户对过时的学生成绩进行删除 " "4 "成绩修改 "客户可以随时修改错误的学生成绩 " 2 系统总体设计 2.1 功能模块的划分 简单的来说在线购物系统大概需要以下4个系统:成绩添加;成绩查询;成绩删除; 成绩修改。 如图1-1所示: 图1-1 系统功能模块图 2.2 模块功能介绍 系统首先呈现的是登陆页面,用户通过登陆页面可以进入到系统内,进行学生或者教 师的登陆,并通过录入教师的号码和学生的学号以及点击学生或者教师来登陆。登陆界 面简洁,方便,大方。 (1)用户登陆:在登陆页面上输入教师或者学生的号码 ,输入密码,点击 击你是学生登陆或者是教师登陆,进入系统。教师登陆过后进入一个拥有添加,查询, 删除,修改的界面,然后点击相关的字样进行操作。 (2)学生成绩的添加:打开添加界面过后教师可以根据学生
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值