学生信息管理系统java
时间: 2023-10-15 19:05:14 浏览: 30
学生信息管理系统是一个常见的应用程序。在Java中,可以使用Swing库来构建用户界面,使用JDBC驱动程序连接到数据库,以存储和检索学生信息。以下是一个简单的学生信息管理系统的示例,其中包括添加、修改、删除和查询学生信息的功能。
首先,需要创建一个数据库,其中包含一个名为“students”的表,该表包含以下字段:id(学生ID)、name(学生姓名)、gender(学生性别)、age(学生年龄)、phone(学生电话号码)。
接下来,创建Java项目并导入以下库:Swing、JDBC和MySQL数据库驱动程序。
然后,创建一个名为“StudentInfoSystem”的类,并在其中添加以下方法:
1. 连接到数据库:
```java
public static Connection getConnection() throws SQLException {
String url = "jdbc:mysql://localhost:3306/students";
String user = "root";
String password = "your_password";
Connection conn = DriverManager.getConnection(url, user, password);
return conn;
}
```
2. 添加学生信息:
```java
public static void addStudent(String name, String gender, int age, String phone) throws SQLException {
Connection conn = null;
PreparedStatement stmt = null;
try {
conn = getConnection();
String sql = "INSERT INTO students (name, gender, age, phone) VALUES (?, ?, ?, ?)";
stmt = conn.prepareStatement(sql);
stmt.setString(1, name);
stmt.setString(2, gender);
stmt.setInt(3, age);
stmt.setString(4, phone);
int rows = stmt.executeUpdate();
if (rows > 0) {
System.out.println("学生信息添加成功!");
}
} finally {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
}
```
3. 修改学生信息:
```java
public static void updateStudent(String name, String gender, int age, String phone, int id) throws SQLException {
Connection conn = null;
PreparedStatement stmt = null;
try {
conn = getConnection();
String sql = "UPDATE students SET name=?, gender=?, age=?, phone=? WHERE id=?";
stmt = conn.prepareStatement(sql);
stmt.setString(1, name);
stmt.setString(2, gender);
stmt.setInt(3, age);
stmt.setString(4, phone);
stmt.setInt(5, id);
int rows = stmt.executeUpdate();
if (rows > 0) {
System.out.println("学生信息修改成功!");
}
} finally {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
}
```
4. 删除学生信息:
```java
public static void deleteStudent(int id) throws SQLException {
Connection conn = null;
PreparedStatement stmt = null;
try {
conn = getConnection();
String sql = "DELETE FROM students WHERE id=?";
stmt = conn.prepareStatement(sql);
stmt.setInt(1, id);
int rows = stmt.executeUpdate();
if (rows > 0) {
System.out.println("学生信息删除成功!");
}
} finally {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
}
```
5. 查询学生信息:
```java
public static void searchStudent(int id) throws SQLException {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
conn = getConnection();
String sql = "SELECT * FROM students WHERE id=?";
stmt = conn.prepareStatement(sql);
stmt.setInt(1, id);
rs = stmt.executeQuery();
if (rs.next()) {
System.out.println("学生信息:");
System.out.println("ID:" + rs.getInt("id"));
System.out.println("姓名:" + rs.getString("name"));
System.out.println("性别:" + rs.getString("gender"));
System.out.println("年龄:" + rs.getInt("age"));
System.out.println("电话号码:" + rs.getString("phone"));
} else {
System.out.println("没有找到该学生信息!");
}
} finally {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
}
```
最后,在主函数中添加以下示例代码:
```java
public static void main(String[] args) {
try {
addStudent("Tom", "男", 18, "123456789");
updateStudent("Jerry", "女", 20, "987654321", 1);
deleteStudent(2);
searchStudent(1);
} catch (SQLException e) {
e.printStackTrace();
}
}
```
这样,就完成了一个简单的学生信息管理系统。你可以根据需要添加更多功能,例如列出所有学生信息、按姓名或年龄排序等。