# Java 课程设计
题 目: 学生成绩管理系统
**摘要**
在现今信息时代,生活速度的加快,使得人们越来越向信息化、数字化发展。随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长,尤其是学生的考试成绩数据。面对庞大的学生的成绩,需要有学生成绩管理系统来提高学生管理工作的效率。介于此提出了学生成绩管理系统,学生管理系统是计算机对学生档案信息进行管理,具有手工管理无可比拟的优点,如索检迅速、查找方便、可靠性高、存储量大等有点。现在我国的大中专院校的学生成绩管理水平正在不断提高,停留在纸介质基础上的管理手段早已被时代淘汰,因为它浪费了许多的人力和物力。本系统使用 Swing + MySQL + IntelliJ IDEA 开发。为管理人员提供充足的信息和快捷的查询手段,提高学校学籍管理的效率。
**关键词:** Swing,MySQL,学生成绩管理系统
## 序言
管理信息系统正在向着网络化、智能化和集成化等趋势发展。学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。
本系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化。达到提高学生成绩管理效率的目的。与传统管理方法相比有明显的优点:查找方便,可靠性高,保密性好,成本低。彻底改变了以前繁杂的管理模式,实现全面的、相对集中的、职能化的信息综合管理。
计算机被用到信息管理系统的环境正是适应了当今时代飞速发展的信息时代。人们深刻的认识到了计算机功能的强大,对于复杂的信息管理,计算机充分发挥着它的优越性。检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低,这些优点极大地减轻了学院教学人员的工作量,缩小开支,提高了学生档案管理的效率和准确性,能够合理的安排时间,学生能够尽快的知道自己的考试成绩。同时,学生管理系统的应用也为今天的教育在未来市场的竞争力有所提高。
# 1 需求分析
## 1.1 需求分析概述
需求分析是开发软件系统的重要环节,是系统开发的第一步和基础环节。通过需求分析充分认识系统的目标、系统的各个组成部分、各部分的任务职责、工作流程、工作中使用的各种数据及数据结构、各部门的业务关系和数据流程等, 为系统设计打下基础。
而在一些学校机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。而且效率也是很低的。所以如何自动高效地管理信息是这些年来许多人所研究的。
随着这些年电脑计算机的速度质的提高,成本的下降,IT 互联网大众趋势的发展。我们使用电脑的高效率才处理数据信息成为可能。学生学籍管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。
## 1.2 系统需求分析
1. 实现数据的录入(添加)、删除、修改
2. 按姓名或学号查询
3. 按照成绩排序,按照成绩段统计汇总
# 2 设计思路
1. 系统通过窗口显示并以菜单方式工作,;
2. 能查询、修改和删除文件中考生信息;
3. 能够显示全部的考生信息;
根据上述系统功能分析,按照结构化程序设计的要求,得到系统的功能结构图, 如图所示。
![](https://www.writebug.com/myres/static/uploads/2021/11/9/5506862fde226787dbb686b7746bc9f1.writebug)
图 2.1 简易流程图
# 3、详细设计
## 3.1 登录界面 Login 类
通过选择教师或学生登录,从两张表查找各自的密码检查是否正确,从而进入不同的客户端。实现代码如下:
```c++
public class Login extends JFrame {
Login father = this;
JTextField user = null;
JPasswordField password = null;
JButton button1 = null;
String flag = "teacher";
Login() {
this.setSize(500, 420);
this.setLocationRelativeTo(null);
this.setTitle("学生成绩管理系统");
this.setResizable(false);
init();
this.setVisible(true);
password.requestFocus();//让密码输入框获得焦点
}
public void login() {//进入主菜单事件String password_true = null; String where = " where T_ID = "; if (flag.equals("teacher")) {
where = " where T_ID = ";
} else {
where = " where S_ID = ";
}
try {
String password_sql = "select passcode from ssms." + flag + where + Integer.parseInt(user.getText()) + ";";
Connection conn = Main.sendConnection();
PreparedStatement stmt =
conn.prepareStatement(password_sql);
ResultSet result = stmt.executeQuery();
result.next();
password_true = result.getString("passcode");
} catch (SQLException e) {
e.printStackTrace();单界面
```
```c++
}
char[] pswd = password.getPassword();
if (String.valueOf(pswd).equals(password_true)) {//密码JOptionPane.showMessageDialog(father, "登陆成功!"); if (flag.equals("teacher")) {
TeacherMenu teacherMenu = new TeacherMenu();//创建主菜
teacherMenu.sendObject(father);//传递主窗口引用teacherMenu.sendID(user.getText());//传递输入的账号ID 用于数据库的操作等
```
```c++
teacherMenu.init();
} else {
StudentMenu studentMenu = new StudentMenu();
studentMenu.sendObject(father);
studentMenu.sendID(user.getText());
studentMenu.init();
}
father.setVisible(false);//进入主菜单界面时隐藏登录界面
} else {
JOptionPane.showMessageDialog(father, "账号或密码错误!", " 错误", JOptionPane.WARNING_MESSAGE);
}
}
public void init() {
setLayout(new GridLayout(2, 1, 0, 0));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel1 = new JPanel() {//登录界面上半部分private static final long serialVersionUID = 1L;
ImageIcon image = new ImageIcon("Image\\up.png");//登录界面上部图片
```
```c++
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image.getImage(), 0, 0, this.getWidth(),
this.getHeight(), this);
}
};
panel1.setLayout(null);
JPanel head = new JPanel() {//头像
private static final long serialVersionUID = 1L;
ImageIcon icon = new ImageIcon("Image\\flower.jpg");
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(icon.getImage(), 0, 0, this.getWidth(),
this.getHeight(), this);
}
};
head.setBounds(200, 70, 100, 100);
panel1.add(head);
JPanel panel2 = new JPanel(new GridLayout(2, 1, 0, 0));//登录界面下半部分
add(panel1);
add(panel2);
JLabel label1 = new JLabel("账 号:");
JLabel label2 = new JLabel("密 码:");
user = new JTextField("10001", 15);//账号输入框password = new JPasswordField(15);//密码输入框
password.addActionListener(e -> login());//密码框添加回车登录事件,进入主菜单界面
JPanel panel3 = new JPanel(new GridLayout(2, 1, 0, 0));//放置用户名和密码及其输入框
JPanel panel4 = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 16));//放置用户名及其输入框
JPanel panel5 = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 16)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本系统使用 Swing + MySQL + IntelliJ IDEA 开发。为管理人员提供充足的信息和快捷的查询手段,提高学校学籍管理的效率。 关键词: Swing,MySQL,学生成绩管理系统
资源推荐
资源详情
资源评论
收起资源包目录
100011259-基于Java(Swing)+MySQL实现(GUI)学生成绩管理系统.zip (40个子文件)
java-swing-mysql
lib
mysql-connector-java-8.0.16.jar 2.19MB
src
StudentMenu.java 9KB
MyTable.java 623B
ReturnQueryResult.java 1KB
TeacherMenu.java 35KB
MyGridBagConstraints.java 807B
Main.java 886B
Login.java 6KB
LICENSE 1KB
SQL
student.sql 1KB
teacher.sql 2KB
course.sql 1KB
score.sql 1KB
READMEbefore.md 848B
README.assets
image-20200817214342713.png 22KB
image-20200817214903383.png 162KB
doc.pdf 1.55MB
Image
flower.jpg 21KB
up.png 13KB
doc.docx-md
15-dc48b035475705dabba172f26cbfd892.png 137KB
14-ea986df358ce4f1418fb705b5598b98b.png 59KB
3-0aa8b7e3ce0cb2108697ec5552a06008.png 25KB
6-62e4f8e9f1432c2189d6477231b270c8.png 88KB
20-6979363a9bd8239d4782da57ea58dee4.png 52KB
2-bf3672f164096498a343f7aa3449e7b2.png 25KB
9-08f108afa158d4bdee94dc897865b2e1.png 92KB
8-46863a0667f4b9713227f0850cd0ea06.png 93KB
17-b7b725c1d2eb7fe3e357298a1443f5d9.png 52KB
1-5f1e3e38c775dd1d7c56c36a1cb41b22.png 12KB
12-8aeded530c5a8b70b21e5a22f4955583.png 90KB
7-57f2382f12647aeba89563e8a69b9a39.png 90KB
18-e2084f4b6dba7024bb688351c3d64af8.png 41KB
5-52fe30d236764e1f382852b6c950ed01.png 41KB
10-994d81d1e0f692ddbd10c0cbbdeb1bb2.png 93KB
19-939dd5afb7f4353fd1d41b6ff2d1fe7a.png 49KB
13-0638640553ffa91ca5c0de1023b4a6a1.png 93KB
11-e80fb15c68f16af46f93184d2d8d1895.png 72KB
4-cc34a796d1bfe60c95db9a45d70b68c0.png 50KB
16-e8f5788a57b925861012bc1842af5070.png 117KB
README.md 62KB
共 40 条
- 1
资源评论
神仙别闹
- 粉丝: 2687
- 资源: 7649
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功