使用maven用java 里面的jdbc语法编写两个方法,实现对数据库的新增和查询。 一个方法是新增班级信息,学生信息,成绩信息。(数据自己写一些测试数据即可。) 另外一个方法是查询出学生的分数信息列表并打印出来,至少需包含学生的班级名称,学生姓名,分数。
时间: 2023-11-22 20:55:40 浏览: 100
使用jdbc,使用java和数据库连接,在java代码中实现访问数据库中数据的方法-------最简单入门级(cs.pdf
好的,以下是使用 Maven 和 JDBC 编写的示例代码,包括新增班级、学生和成绩信息以及查询学生的分数信息列表并打印出来。
先要确保你已经安装了 Maven 和 JDBC 驱动,然后在 pom.xml 文件中添加以下依赖:
```xml
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
</dependencies>
```
其中 mysql-connector-java 是 MySQL 的 JDBC 驱动。
接下来是代码,首先是新增班级、学生和成绩信息的方法:
```java
import java.sql.*;
public class Database {
private static final String DB_URL = "jdbc:mysql://localhost:3306/test";
private static final String DB_USER = "root";
private static final String DB_PASSWORD = "password";
public static void addData() {
try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
Statement stmt = conn.createStatement()) {
// 新增班级信息
stmt.executeUpdate("INSERT INTO class (name) VALUES ('Class A')");
stmt.executeUpdate("INSERT INTO class (name) VALUES ('Class B')");
// 新增学生信息
stmt.executeUpdate("INSERT INTO student (name, class_id) VALUES ('Alice', 1)");
stmt.executeUpdate("INSERT INTO student (name, class_id) VALUES ('Bob', 2)");
// 新增成绩信息
stmt.executeUpdate("INSERT INTO score (student_id, score) VALUES (1, 90)");
stmt.executeUpdate("INSERT INTO score (student_id, score) VALUES (2, 85)");
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void queryData() {
try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT class.name, student.name, score.score " +
"FROM class, student, score " +
"WHERE class.id = student.class_id AND student.id = score.student_id")) {
// 打印学生的分数信息列表
System.out.println("班级\t学生\t分数");
while (rs.next()) {
String className = rs.getString(1);
String studentName = rs.getString(2);
int score = rs.getInt(3);
System.out.println(className + "\t" + studentName + "\t" + score);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
addData();
queryData();
}
}
```
在 addData() 方法中,我们使用 Statement 对象执行 SQL 语句,分别向 class、student 和 score 表中插入数据。注意,我们使用 try-with-resources 语句来自动关闭连接和语句对象。
在 queryData() 方法中,我们使用 Statement 和 ResultSet 对象来查询学生的分数信息,其中使用了联结查询(JOIN)。
最后,在 main() 方法中,我们调用 addData() 方法插入数据,然后调用 queryData() 方法查询数据并打印结果。
希望这个示例能够帮助到你。
阅读全文