Files
SAE31_2024/TestV1/TestEnAttendantResolutionBug/utils/Database.java

62 lines
2.4 KiB
Java
Raw Normal View History

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Database {
private static final String URL = "jdbc:mariadb://dwarves.iut-fbleau.fr:3306/foulou";
private static final String LOGIN = "foulou";
private static final String PASSWORD = "foulou";
private Connection database;
public Database() throws SQLException {
try {
// Chargement explicite du driver
System.out.println("Tentative de chargement du driver MariaDB...");
Class.forName("org.mariadb.jdbc.Driver");
System.out.println("Driver MariaDB chargé avec succès.");
try {
// Connexion à la base de données
System.out.println("Tentative de connexion à la base de données...");
this.database = DriverManager.getConnection(URL, LOGIN, PASSWORD);
System.out.println("Connexion réussie !");
} catch (SQLException e) {
System.err.println("Échec de la connexion à la base de données : " + e.getMessage());
throw new SQLException("Erreur de connexion : " + e.getMessage(), e);
}
} catch (ClassNotFoundException e) {
System.err.println("Erreur : Le driver MariaDB n'a pas été trouvé dans le classpath.");
throw new SQLException("Driver MariaDB introuvable dans le classpath", e);
}
}
public Connection getDatabase() {
return this.database;
}
public void close() {
try {
if (this.database != null && !this.database.isClosed()) {
this.database.close();
System.out.println("Connexion fermée.");
}
} catch (SQLException e) {
System.err.println("Erreur lors de la fermeture de la base de données : " + e.getMessage());
}
}
public static void main(String[] args) {
try {
// Crée une instance de la classe Database et teste la connexion
Database db = new Database();
System.out.println("Connexion à la base de données réussie !");
// Fermer la connexion après test
db.close();
} catch (SQLException e) {
System.err.println("Erreur lors de la connexion : " + e.getMessage());
}
}
}