学生管理系统连接数据库实现学生的增删改查java代码
时间: 2023-08-14 08:22:30 浏览: 105
好的,以下是一个简单的学生管理系统的 Java 代码,可以连接数据库并实现学生的增删改查功能。
需要注意的是,这里使用了 JDBC 连接 MySQL 数据库,因此需要下载 MySQL 的 JDBC 驱动包,并在代码中进行引用。
```java
import java.sql.*;
public class StudentManager {
// 定义 MySQL 数据库的连接信息
private static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
private static final String DB_URL = "jdbc:mysql://localhost:3306/student";
private static final String USER = "root";
private static final String PASS = "password";
// 增加学生信息
public void addStudent(Student student) {
Connection conn = null;
PreparedStatement pstmt = null;
try {
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开连接
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行 SQL
String sql = "INSERT INTO student_info (id, name, age, gender, grade) VALUES (?, ?, ?, ?, ?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, student.getId());
pstmt.setString(2, student.getName());
pstmt.setInt(3, student.getAge());
pstmt.setString(4, student.getGender());
pstmt.setString(5, student.getGrade());
pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// 删除学生信息
public void deleteStudent(String id) {
Connection conn = null;
PreparedStatement pstmt = null;
try {
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开连接
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行 SQL
String sql = "DELETE FROM student_info WHERE id=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, id);
pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// 修改学生信息
public void updateStudent(Student student) {
Connection conn = null;
PreparedStatement pstmt = null;
try {
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开连接
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行 SQL
String sql = "UPDATE student_info SET name=?, age=?, gender=?, grade=? WHERE id=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, student.getName());
pstmt.setInt(2, student.getAge());
pstmt.setString(3, student.getGender());
pstmt.setString(4, student.getGrade());
pstmt.setString(5, student.getId());
pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// 查询学生信息
public Student queryStudent(String id) {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
Student student = null;
try {
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开连接
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行 SQL
String sql = "SELECT * FROM student_info WHERE id=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, id);
rs = pstmt.executeQuery();
// 处理结果集
if (rs.next()) {
student = new Student();
student.setId(rs.getString("id"));
student.setName(rs.getString("name"));
student.setAge(rs.getInt("age"));
student.setGender(rs.getString("gender"));
student.setGrade(rs.getString("grade"));
}
// 关闭连接
rs.close();
pstmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return student;
}
}
```
其中,`Student` 类表示一个学生,包括学生的 ID、姓名、年龄、性别和年级。`StudentManager` 类实现了学生的增删改查功能,使用 JDBC 连接 MySQL 数据库,并执行相应的 SQL 语句。在实际使用时,需要将代码中的数据库连接信息替换为自己的数据库连接信息。
阅读全文