Files
SAE31_2025/src/fr/iutfbleau/papillon/BaseDeDonnees.java
T
2025-10-23 20:27:57 +02:00

106 lines
3.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class BaseDeDonnees {
private static final String URL = "jdbc:mariadb://dwarves.iut-fbleau.fr/val";
private static final String USER = "val";
private static final String PASS = "vali";
/** Connexion */
public static Connection getConnexion() throws SQLException {
try {
Class.forName("org.mariadb.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.out.println("Erreur : pilote MariaDB non trouvé !");
}
return DriverManager.getConnection(URL, USER, PASS);
}
/** Ajout dun rappel (INSERT) */
public static int ajouter(Rappel r) throws SQLException {
String sql = "INSERT INTO rappel(titre, contenu, theme, rang) VALUES (?, ?, ?, ?)";
Connection cnx = getConnexion();
PreparedStatement pst = cnx.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
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);
}
rs.close();
pst.close();
cnx.close();
return id;
}
/** Liste des rappels */
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<>();
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);
}
rs.close();
pst.close();
cnx.close();
return res;
}
/** Modification dun rappel (UPDATE) */
public static int modifier(int id, Rappel r) throws SQLException {
String sql = "UPDATE rappel SET titre=?, contenu=?, theme=?, rang=? WHERE id=?";
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;
}
/** Suppression dun rappel (DELETE) */
public static int supprimer(int id) throws SQLException {
String sql = "DELETE FROM rappel WHERE id=?";
Connection cnx = getConnexion();
PreparedStatement pst = cnx.prepareStatement(sql);
pst.setInt(1, id);
int rows = pst.executeUpdate();
pst.close();
cnx.close();
return rows;
}
}