java学生信息管理系统课程设计

时间: 2023-12-12 11:04:32 浏览: 43
为了设计和开发一个Java学生信息管理系统,需要完成以下步骤: 1. 需求分析:确定系统的主要功能和处理的数据。在这个系统中,主要功能包括学生信息的增加、删除、修改和查询,以及成绩信息的增加、删除、修改和查询。数据包括学生的基本信息(学号、姓名、性别、年龄、专业、家庭住址)和成绩信息。 2. 系统设计:设计系统的功能结构和数据库。在这个系统中,可以使用MVC(Model-View-Controller)模式来设计系统的功能结构。在数据库设计方面,可以使用E-R图来设计数据库的结构,包括学生信息表和成绩信息表。学生信息表包括学号、姓名、性别、年龄、专业和家庭住址等字段,成绩信息表包括学号、课程名称、成绩等字段。 3. 编码实现:使用Java编程语言实现系统的功能。在这个系统中,可以使用Java Swing来实现用户界面,使用JDBC(Java Database Connectivity)来连接数据库,并使用SQL语句来操作数据库。 以下是一个简单的Java学生信息管理系统的代码示例: ```java import java.sql.*; public class StudentManagementSystem { private Connection conn; private Statement stmt; private ResultSet rs; public StudentManagementSystem() { try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/student", "root", "password"); stmt = conn.createStatement(); } catch (Exception e) { e.printStackTrace(); } } public void addStudent(String id, String name, String gender, int age, String major, String address) { try { String sql = "INSERT INTO student_info VALUES('" + id + "', '" + name + "', '" + gender + "', " + age + ", '" + major + "', '" + address + "')"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void deleteStudent(String id) { try { String sql = "DELETE FROM student_info WHERE id='" + id + "'"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void updateStudent(String id, String name, String gender, int age, String major, String address) { try { String sql = "UPDATE student_info SET name='" + name + "', gender='" + gender + "', age=" + age + ", major='" + major + "', address='" + address + "' WHERE id='" + id + "'"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void queryStudent(String id) { try { String sql = "SELECT * FROM student_info WHERE id='" + id + "'"; rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println("ID: " + rs.getString("id")); System.out.println("Name: " + rs.getString("name")); System.out.println("Gender: " + rs.getString("gender")); System.out.println("Age: " + rs.getInt("age")); System.out.println("Major: " + rs.getString("major")); System.out.println("Address: " + rs.getString("address")); } } catch (Exception e) { e.printStackTrace(); } } public void addScore(String id, String course, int score) { try { String sql = "INSERT INTO score_info VALUES('" + id + "', '" + course + "', " + score + ")"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void deleteScore(String id, String course) { try { String sql = "DELETE FROM score_info WHERE id='" + id + "' AND course='" + course + "'"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void updateScore(String id, String course, int score) { try { String sql = "UPDATE score_info SET score=" + score + " WHERE id='" + id + "' AND course='" + course + "'"; stmt.executeUpdate(sql); } catch (Exception e) { e.printStackTrace(); } } public void queryScore(String id) { try { String sql = "SELECT * FROM score_info WHERE id='" + id + "'"; rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println("ID: " + rs.getString("id")); System.out.println("Course: " + rs.getString("course")); System.out.println("Score: " + rs.getInt("score")); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { StudentManagementSystem sms = new StudentManagementSystem(); sms.addStudent("1001", "张三", "男", 20, "计算机科学与技术", "北京市海淀区"); sms.addStudent("1002", "李四", "女", 21, "软件工程", "北京市朝阳区"); sms.addScore("1001", "Java程序设计", 90); sms.addScore("1001", "数据库原理", 85); sms.addScore("1002", "Java程序设计", 95); sms.addScore("1002", "数据库原理", 80); sms.queryStudent("1001"); sms.queryScore("1001"); sms.updateStudent("1001", "张三", "男", 21, "计算机科学与技术", "北京市海淀区"); sms.updateScore("1001", "Java程序设计", 95); sms.queryStudent("1001"); sms.queryScore("1001"); sms.deleteStudent("1001"); sms.deleteScore("1002", "数据库原理"); sms.queryStudent("1001"); sms.queryScore("1002"); } } ```

相关推荐

最新推荐

recommend-type

【java课设】学生选课系统.pdf

根据课程信息和学生信息完成对课程的选修,需要专门的一个管理类来完成选修工作。 2、功能要求 (1)添加功能:程序能够任意添加课程和学生记录,可提供选择界面供用户选择所要添加的类别,要求编号要唯一,如果添加...
recommend-type

Java课程设计班级管理系统

学生的粗浅课程设计,是一篇基于Java和sql server的设计,里面程序并不完善,不过学生信息方面具有增删改查四个功能,其余的只有添加和查看两个功能,不过可以基于学生信息方面进行修改完善,大体内容都是相近的。
recommend-type

java实现学生成绩录入系统

主要为大家详细介绍了java实现学生成绩录入系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

基于Java Web的学生选课系统JavaWeb设计

本选课系统着重应用JAVA WEB技术包括:JSP技术以及JDBC连接数据库。使用前台的技术包括JSP,JavaScript,CSS等。...教师管理员可以查看自己所带课程选课的相关学生信息等等。 关键词:JSP;MySQL数据库;选课系统。
recommend-type

JSP学生学籍管理系统毕业设计论文

4.1 学生学籍管理系统首页的设计 30 4.2 用户管理模块的设计 32 4.3 课程管理模块的设计 34 4.4 成绩管理模块的设计 36 4.5 系统管理模块的设计 37 第五章 系统测试 39 5.1 系统测试的目的和原则 39 5.1.1 系统测试...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

机器学习怎么将excel转为csv文件

机器学习是一种利用计算机算法和统计数据的方法来训练计算机来进行自动学习的科学,无法直接将excel文件转为csv文件。但是可以使用Python编程语言来读取Excel文件内容并将其保存为CSV文件。您可以使用Pandas库来读取Excel文件,并使用to_csv()函数将其保存为CSV格式。以下是代码示例: ```python import pandas as pd # 读取 Excel 文件 excel_data = pd.read_excel('example.xlsx') # 将数据保存为 CSV 文件 excel_data.to_csv('example.csv', index=
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。