创建数据库TEST,创建一个表student。2、定义数据库操作类JdbCAccess,定义三个方 法: (1)getconnection():实现数据库的连接 (2)getstudent():指定学号,查询学生信息 ; (3)addstudent():将学生信息插入数据库。 3、定义主类,连接数据库、根据学号查询学生信息 、插入学生信息
时间: 2024-02-13 15:00:33 浏览: 23
好的,下面是一个简单的Java程序,用于连接MySQL数据库并对student表进行查询和插入操作。
首先,我们需要下载并安装MySQL数据库,并在其中创建一个名为TEST的数据库和一个名为student的表,方法可以参考上一条回答中的SQL语句。
然后,我们可以编写一个JdbcAccess类,用于连接MySQL数据库并定义getStudent()和addStudent()方法,具体代码如下:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JdbcAccess {
private Connection conn;
public JdbcAccess(String url, String user, String password) throws SQLException {
conn = DriverManager.getConnection(url, user, password);
}
public void close() throws SQLException {
conn.close();
}
public Student getStudent(String id) throws SQLException {
PreparedStatement stmt = conn.prepareStatement("SELECT * FROM student WHERE id = ?");
stmt.setString(1, id);
ResultSet rs = stmt.executeQuery();
if (rs.next()) {
Student student = new Student();
student.setId(rs.getString("id"));
student.setName(rs.getString("name"));
student.setSex(rs.getString("sex"));
student.setAge(rs.getInt("age"));
student.setScore(rs.getInt("score"));
return student;
} else {
return null;
}
}
public void addStudent(Student student) throws SQLException {
PreparedStatement stmt = conn.prepareStatement("INSERT INTO student VALUES (?, ?, ?, ?, ?)");
stmt.setString(1, student.getId());
stmt.setString(2, student.getName());
stmt.setString(3, student.getSex());
stmt.setInt(4, student.getAge());
stmt.setInt(5, student.getScore());
stmt.executeUpdate();
}
}
```
其中,Student是一个简单的Java类,用于表示学生信息,具体代码如下:
```java
public class Student {
private String id;
private String name;
private String sex;
private int age;
private int score;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
```
最后,我们可以编写一个Main类,用于连接MySQL数据库,并调用JdbcAccess类的getStudent()和addStudent()方法,具体代码如下:
```java
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
try {
// 连接MySQL数据库
JdbcAccess access = new JdbcAccess("jdbc:mysql://localhost:3306/TEST", "root", "password");
// 查询学生信息
Student student = access.getStudent("001");
if (student != null) {
System.out.println("学号:" + student.getId());
System.out.println("姓名:" + student.getName());
System.out.println("性别:" + student.getSex());
System.out.println("年龄:" + student.getAge());
System.out.println("分数:" + student.getScore());
} else {
System.out.println("未找到该学生");
}
// 插入学生信息
Student newStudent = new Student();
newStudent.setId("002");
newStudent.setName("李四");
newStudent.setSex("女");
newStudent.setAge(19);
newStudent.setScore(85);
access.addStudent(newStudent);
// 关闭数据库连接
access.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
在运行这个Main类之前,需要将其中的数据库连接URL、用户名和密码替换成对应的值。运行程序后,就可以连接MySQL数据库,并对student表进行查询和插入操作了。
希望这个示例能够帮助你实现Java程序连接MySQL数据库并进行基本的操作。