首页 开发百科文章正文

javafx数据库的增删改查

开发百科 2025年11月17日 10:30 441 admin

深入浅出JavaFX数据库操作:实现增删改查的完整指南

在现代软件开发中,数据库操作是不可或缺的一部分,JavaFX作为一个强大的GUI框架,提供了与数据库交互的能力,使得开发者能够创建丰富的桌面应用程序,本文将详细介绍如何使用JavaFX进行数据库的增删改查(CRUD)操作。

javafx数据库的增删改查

我们需要了解JavaFX如何与数据库进行交互,JavaFX本身不提供直接的数据库操作功能,但我们可以使用JDBC(Java Database Connectivity)来实现这一目标,JDBC是一个标准API,允许Java程序与各种数据库进行通信。

我们将介绍如何在JavaFX应用程序中实现CRUD操作,以下是一个简单的示例代码,演示了如何创建一个JavaFX应用程序,并通过JDBC连接到MySQL数据库,执行增删改查操作。

javafx数据库的增删改查

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import java.sql.*;
public class CrudExample extends Application {
    private Connection connection;
    @Override
    public void start(Stage primaryStage) {
        try {
            // 建立数据库连接
            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/yourdatabase", "username", "password");
            // 创建表视图
            TableView<Person> table = new TableView<>();
            TableColumn<Person, Integer> idColumn = new TableColumn<>("ID");
            idColumn.setCellValueFactory(new PropertyValueFactory<>("id"));
            TableColumn<Person, String> nameColumn = new TableColumn<>("Name");
            nameColumn.setCellValueFactory(new PropertyValueFactory<>("name"));
            table.getColumns().addAll(idColumn, nameColumn);
            // 查询数据并填充到表视图中
            String query = "SELECT * FROM person";
            PreparedStatement statement = connection.prepareStatement(query);
            ResultSet resultSet = statement.executeQuery();
            while (resultSet.next()) {
                Person person = new Person(resultSet.getInt("id"), resultSet.getString("name"));
                table.getItems().add(person);
            }
            // 创建按钮并添加事件处理
            Button addButton = new Button("Add");
            addButton.setOnAction(e -> addPerson());
            VBox vbox = new VBox(table, addButton);
            Scene scene = new Scene(vbox, 400, 300);
            primaryStage.setScene(scene);
            primaryStage.show();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    private void addPerson() {
        // 插入数据到数据库
        String insertQuery = "INSERT INTO person (name) VALUES (?)";
        try (PreparedStatement statement = connection.prepareStatement(insertQuery)) {
            statement.setString(1, "New Person");
            statement.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        launch(args);
    }
}

在这个示例中,我们创建了一个JavaFX应用程序,通过JDBC连接到MySQL数据库,并实现了一个简单的增删改查功能,我们使用TableView来显示数据库中的数据,并使用Button来实现添加新记录的功能。

标签: JavaFX

丫丫技术百科 备案号:新ICP备2024010732号-62 网站地图