Maison >base de données >tutoriel mysql >Comment puis-je connecter facilement mon application JavaFX à une base de données MySQL ?

Comment puis-je connecter facilement mon application JavaFX à une base de données MySQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-03 22:13:12848parcourir

How Can I Easily Connect My JavaFX Application to a MySQL Database?

Connexion de JavaFX à MySQL en toute simplicité : une classe de connectivité de base de données

Lorsqu'il s'agit de connecter des applications JavaFX à des bases de données MySQL, la simplicité et l'efficacité sont crucial. Dans cet article, nous allons explorer une solution complète en fournissant une classe spécialement conçue pour établir une connexion MySQL et récupérer des données dans une table.

Notre classe proposée, connue sous le nom de PersonDataAccessor, incarne une approche simple de l’interaction avec les bases de données. Elle se compose de trois méthodes :

  1. getPersonList() : Cette méthode interroge la table "person" dans la base de données et renvoie une liste d'objets Person, chacun représentant une ligne dans le tableau.
  2. addPerson(Person person) : Insère une nouvelle personne dans le base de données.
  3. shutdown() : ferme la connexion à la base de données lorsque l'application est terminée.

Pour établir la connexion, le constructeur de classe nécessite quatre paramètres :

  • driverClassName : Le nom du pilote JDBC pour MySQL.
  • dbURL : L'URL de la base de données.
  • user : Le nom d'utilisateur de la base de données.
  • password : Le mot de passe de la base de données.

Pour utiliser cette classe, vous devrez créer une instance et appeler la méthode getPersonList() pour remplir votre TableView avec des données. Une fois les données affichées, vous pouvez utiliser les autres méthodes pour gérer la base de données selon vos besoins.

Voici un exemple de mise en œuvre de cette solution :

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

public class PersonDataAccessor {

    private Connection connection;

    public PersonDataAccessor(String driverClassName, String dbURL, String user, String password) throws SQLException, ClassNotFoundException {
        Class.forName(driverClassName);
        connection = DriverManager.getConnection(dbURL, user, password);
    }

    public void shutdown() throws SQLException {
        if (connection != null) {
            connection.close();
        }
    }

    public List<Person> getPersonList() throws SQLException {
        List<Person> personList = new ArrayList<>();
        Statement statement = connection.createStatement();
        ResultSet resultSet = statement.executeQuery("SELECT * FROM person");

        while (resultSet.next()) {
            String firstName = resultSet.getString("first_name");
            String lastName = resultSet.getString("last_name");
            String email = resultSet.getString("email");

            Person person = new Person(firstName, lastName, email);
            personList.add(person);
        }

        statement.close();
        resultSet.close();

        return personList;
    }

    public void addPerson(Person person) throws SQLException {
        String firstName = person.getFirstName();
        String lastName = person.getLastName();
        String email = person.getEmail();

        Statement statement = connection.createStatement();
        statement.executeUpdate("INSERT INTO person (first_name, last_name, email) VALUES ('" + firstName + "', '" + lastName + "', '" + email + "')");
        statement.close();
    }
}

Avec cette classe à votre disposition , connecter votre application JavaFX à une base de données MySQL et gérer la récupération et l'insertion des données devient un jeu d'enfant. Profitez d'une intégration transparente des bases de données et concentrez-vous sur la création d'applications robustes et centrées sur les données, sans tracas inutiles !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn