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");
}
}
```