2025-10-21 18:31:50 +02:00
|
|
|
|
import java.sql.*;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
|
import java.util.List;
|
2025-10-19 19:41:15 +02:00
|
|
|
|
|
|
|
|
|
|
public class BaseDeDonnees {
|
|
|
|
|
|
|
2025-10-21 18:31:50 +02:00
|
|
|
|
private static final String URL = "jdbc:mariadb://dwarves.iut-fbleau.fr:3306/yolou";
|
|
|
|
|
|
private static final String USER = "yolou";
|
|
|
|
|
|
private static final String PASS = "serikhaneyolou";
|
2025-10-19 19:41:15 +02:00
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
/** Connexion */
|
|
|
|
|
|
public static Connection getConnexion() throws SQLException {
|
2025-10-19 19:41:15 +02:00
|
|
|
|
try {
|
2025-10-21 18:31:50 +02:00
|
|
|
|
Class.forName("org.mariadb.jdbc.Driver");
|
2025-10-21 19:11:17 +02:00
|
|
|
|
} catch (ClassNotFoundException e) {
|
|
|
|
|
|
System.out.println("Erreur : pilote MariaDB non trouvé !");
|
|
|
|
|
|
}
|
2025-10-21 18:31:50 +02:00
|
|
|
|
return DriverManager.getConnection(URL, USER, PASS);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
/** Ajout d’un rappel (INSERT) */
|
2025-10-21 18:31:50 +02:00
|
|
|
|
public static int ajouter(Rappel r) throws SQLException {
|
2025-10-21 19:11:17 +02:00
|
|
|
|
String sql = "INSERT INTO rappel(titre, contenu, theme, rang) VALUES (?, ?, ?, ?)";
|
|
|
|
|
|
Connection cnx = getConnexion();
|
|
|
|
|
|
PreparedStatement pst = cnx.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
|
2025-10-21 18:31:50 +02:00
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
pst.setString(1, r.getTitre());
|
|
|
|
|
|
pst.setString(2, r.getContenu());
|
|
|
|
|
|
pst.setString(3, r.getTheme());
|
|
|
|
|
|
pst.setInt(4, r.getRang());
|
|
|
|
|
|
pst.executeUpdate();
|
|
|
|
|
|
|
|
|
|
|
|
ResultSet rs = pst.getGeneratedKeys();
|
|
|
|
|
|
int id = 0;
|
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
|
id = rs.getInt(1);
|
|
|
|
|
|
r.setId(id);
|
2025-10-19 19:41:15 +02:00
|
|
|
|
}
|
2025-10-21 19:11:17 +02:00
|
|
|
|
|
|
|
|
|
|
rs.close();
|
|
|
|
|
|
pst.close();
|
|
|
|
|
|
cnx.close();
|
|
|
|
|
|
return id;
|
2025-10-19 19:41:15 +02:00
|
|
|
|
}
|
2025-10-21 18:31:50 +02:00
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
/** Liste des rappels */
|
2025-10-21 18:31:50 +02:00
|
|
|
|
public static List<Rappel> lister() throws SQLException {
|
|
|
|
|
|
String sql = "SELECT id, titre, contenu, theme, rang FROM rappel ORDER BY rang ASC, id ASC";
|
|
|
|
|
|
List<Rappel> res = new ArrayList<>();
|
2025-10-21 19:11:17 +02:00
|
|
|
|
|
|
|
|
|
|
Connection cnx = getConnexion();
|
|
|
|
|
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
|
|
|
|
|
ResultSet rs = pst.executeQuery();
|
|
|
|
|
|
|
|
|
|
|
|
while (rs.next()) {
|
|
|
|
|
|
Rappel r = new Rappel(
|
|
|
|
|
|
rs.getInt("id"),
|
|
|
|
|
|
rs.getString("titre"),
|
|
|
|
|
|
rs.getString("contenu"),
|
|
|
|
|
|
rs.getString("theme"),
|
|
|
|
|
|
rs.getInt("rang")
|
|
|
|
|
|
);
|
|
|
|
|
|
res.add(r);
|
2025-10-21 18:31:50 +02:00
|
|
|
|
}
|
2025-10-21 19:11:17 +02:00
|
|
|
|
|
|
|
|
|
|
rs.close();
|
|
|
|
|
|
pst.close();
|
|
|
|
|
|
cnx.close();
|
2025-10-21 18:31:50 +02:00
|
|
|
|
return res;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
/** Modification d’un rappel (UPDATE) */
|
2025-10-21 18:31:50 +02:00
|
|
|
|
public static int modifier(int id, Rappel r) throws SQLException {
|
|
|
|
|
|
String sql = "UPDATE rappel SET titre=?, contenu=?, theme=?, rang=? WHERE id=?";
|
2025-10-21 19:11:17 +02:00
|
|
|
|
Connection cnx = getConnexion();
|
|
|
|
|
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
|
|
|
|
|
|
|
|
|
|
|
pst.setString(1, r.getTitre());
|
|
|
|
|
|
pst.setString(2, r.getContenu());
|
|
|
|
|
|
pst.setString(3, r.getTheme());
|
|
|
|
|
|
pst.setInt(4, r.getRang());
|
|
|
|
|
|
pst.setInt(5, id);
|
|
|
|
|
|
|
|
|
|
|
|
int rows = pst.executeUpdate();
|
|
|
|
|
|
|
|
|
|
|
|
pst.close();
|
|
|
|
|
|
cnx.close();
|
|
|
|
|
|
return rows;
|
2025-10-21 18:31:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-10-21 19:11:17 +02:00
|
|
|
|
/** Suppression d’un rappel (DELETE) */
|
2025-10-21 18:31:50 +02:00
|
|
|
|
public static int supprimer(int id) throws SQLException {
|
|
|
|
|
|
String sql = "DELETE FROM rappel WHERE id=?";
|
2025-10-21 19:11:17 +02:00
|
|
|
|
Connection cnx = getConnexion();
|
|
|
|
|
|
PreparedStatement pst = cnx.prepareStatement(sql);
|
|
|
|
|
|
|
|
|
|
|
|
pst.setInt(1, id);
|
|
|
|
|
|
int rows = pst.executeUpdate();
|
|
|
|
|
|
|
|
|
|
|
|
pst.close();
|
|
|
|
|
|
cnx.close();
|
|
|
|
|
|
return rows;
|
2025-10-21 18:31:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|