利用 JavaGUI 和 JDBC 编程实现学生成绩查询功能。 (输入学生学号, 即可查询到该学 生的所有成绩)
时间: 2024-02-25 16:56:08 浏览: 63
好的,这是一个比较具体的问题,我来回答一下。
首先,你需要用 JavaGUI 设计一个简单的界面,包括一个输入框和一个查询按钮。当用户输入学生学号后,点击查询按钮,程序会从数据库中查询该学生的成绩,并在界面上显示出来。
以下是一个简单的实现过程:
1. 首先,你需要创建一个 Java 项目,并添加 JDBC 驱动程序。
2. 编写 JavaGUI 界面,包括一个文本框和一个按钮。
3. 在按钮的事件监听器中,编写查询数据库的代码。
4. 连接数据库,使用 SQL 语句查询该学生的成绩。
5. 将查询结果显示在界面上。
下面是一个简单的代码示例:
```java
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
public class ScoreQuery extends Frame implements ActionListener {
private Label label;
private TextField textField;
private Button button;
public ScoreQuery() {
super("学生成绩查询");
setLayout(new FlowLayout());
label = new Label("请输入学生学号:");
textField = new TextField(20);
button = new Button("查询");
add(label);
add(textField);
add(button);
button.addActionListener(this);
setSize(300, 100);
setVisible(true);
}
public void actionPerformed(ActionEvent event) {
String id = textField.getText();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname", "username", "password");
Statement statement = connection.createStatement();
String sql = "SELECT * FROM score WHERE id='" + id + "'";
ResultSet resultSet = statement.executeQuery(sql);
while (resultSet.next()) {
int chinese = resultSet.getInt("chinese");
int math = resultSet.getInt("math");
int english = resultSet.getInt("english");
System.out.println("语文:" + chinese + ",数学:" + math + ",英语:" + english);
}
resultSet.close();
statement.close();
connection.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new ScoreQuery();
}
}
```
这是一个非常简单的例子,你需要根据实际情况进行修改和完善。
阅读全文