java学生成绩管理信息系统

一、 引言

学生成绩管理信息系统是一个基于Java Swing的桌面应用程序,旨在方便学校、老师和学生对学生成绩进行管理和查询。本文档将提供系统的详细说明,包括系统特性、使用方法和技术实现。

二、 系统特性

2.1 学生管理

添加学生信息:录入学生基本信息,包括学号、姓名、班级等。
编辑学生信息:修改学生已有信息,确保数据的准确性。
删除学生信息:从系统中移除不再需要的学生记录。

2.2 成绩管理

添加成绩记录:输入学生的考试成绩,包括科目和分数。
编辑成绩记录:修改学生的考试成绩,确保数据的实时性。
删除成绩记录:从系统中删除不正确或不需要的成绩数据。

2.3 查询与统计

查询学生成绩:通过学号或姓名查询学生的考试成绩。
班级成绩统计:按照班级对成绩进行统计和分析。
科目成绩排名:查看某一科目的成绩排名。

2.4不一一列举

三、 技术实现

3.1 Java Swing GUI

系统使用Java Swing作为图形用户界面(GUI)的开发工具,提供直观的操作界面,包括表格、按钮和文本框等组件。

3.2 MVC 架构

系统采用MVC(Model-View-Controller)架构,将数据逻辑、用户界面和用户输入分离,提高系统的可维护性和可扩展性。

四、数据库

这是一个简单的学生成绩管理系统的MySQL数据库表结构。以下是每个表的简要说明:

  1. course 表:

    • 存储课程信息。
    • 字段:
      • cno: 课程编号 (Primary Key)
      • cname: 课程名称
    • 记录:
      • 三个课程的信息。
  2. grade 表:

    • 存储学生成绩信息。
    • 字段:
      • cno: 课程编号 (Foreign Key)
      • sno: 学生编号 (Foreign Key)
      • core: 成绩
    • 记录:
      • 一个学生的一个课程的成绩记录。
  3. student 表:

    • 存储学生信息。
    • 字段:
      • sno: 学生编号 (Primary Key)
      • sname: 学生姓名
      • classes: 班级
    • 记录:
      • 一个学生的信息。
  4. user 表:

    • 存储系统用户信息,用于登录。
    • 字段:
      • username: 用户名 (Primary Key)
      • password: 密码
    • 记录:
      • 包含两个用户的登录信息,一个是学生,另一个是管理员。

这些表之间通过外键关联,例如 course 表中的 cnograde 表中的外键,关联学生成绩和课程信息。在 grade 表中,snocno 共同构成主键,确保每个学生在每门课程上只有一条记录。

如果有进一步的问题或需要特定信息,请提出。

五、程序截图

java学生成绩管理信息系统_第1张图片
java学生成绩管理信息系统_第2张图片

java学生成绩管理信息系统_第3张图片
java学生成绩管理信息系统_第4张图片
java学生成绩管理信息系统_第5张图片
java学生成绩管理信息系统_第6张图片
java学生成绩管理信息系统_第7张图片
java学生成绩管理信息系统_第8张图片

六、代码

StudentUpdate.java

package com.scm;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;

public class DBUtils {
	private static String driverClass;
	private static String url;
	private static String username;
	private static String password;
	static{
		ResourceBundle bundle = ResourceBundle.getBundle("dbinfo");
		 driverClass = bundle.getString("driverClass");
		 url=bundle.getString("url");
		 username=bundle.getString("username");
		 password=bundle.getString("password");
		try {
			
			Class.forName(driverClass);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}

	public static Connection getConnection(){
		try {
			return DriverManager.getConnection(url, username, password);
		} catch (SQLException e) {
			e.printStackTrace();
			return null;
		}
	}
	//�ر���Դ
	public static void closeAll(ResultSet rs,Statement stmt,Connection conn){
		if(rs!=null){
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if(stmt!=null){
			try {
				stmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if(conn!=null){
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
}

User.java

package com.scm;


public class User {

	private String username;
	private String password;
	public User(){}
	public User(String username, String password) {
		super();
		this.username = username;
		this.password = password;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	
}

七、联系与交流

q:969060742 文档、完整代码、sql

你可能感兴趣的:(java课设,java,开发语言)