Bases de données relationnelles
–connexion BD–
Intro
- Votre travail sur votre MyEasyline commence. Rapprochez-vous de votre enseignant pour les détails du projet !
- Livrable : Cahier des Charges (Client, but de l’application, utilisateurs, fonctionnalités, maquette, début de Gantt)
Etape 1
Livrable : Easyline/mission6/easyline.sql
- Réaliser la base de données correspondant à votre diagramme de classe de la mission 5.
- Valider votre base de données par le professeur
- Installer le driver correspondant au serveur de base de données choisie (Mysql, MariaDB ou autre)
https://dbschema.com/jdbc-driver/MySql.html
- Réaliser la connexion à la base de données
try{ Class.forName("com.mysql.cj.jdbc.Driver"); System.out.append("driver ok"); Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/maBase","login","mdp"); System.out.append("connection ok"); }catch(Exception e){ e.printStackTrace(); }
- tester le code suivant pour l’execution d’une requete SQL
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
public static void main(String args[]){ String url = "jdbc:mysql://localhost:3306/easyline?serverTimezone=UTC"; String utilisateur = "root"; String motDePasse = "root"; Connection connexion = null; Statement statement = null; ResultSet resultat = null; try { Class.forName("com.mysql.cj.jdbc.Driver"); connexion = DriverManager.getConnection(url, utilisateur, motDePasse); statement = connexion.createStatement(); resultat = statement.executeQuery("SELECT * FROM bagage;"); System.out.println("ID\tPOIDS\t\t"); System.out.println("------------------------------------------------"); while (resultat.next()) { int id = resultat.getInt("id"); String poids = resultat.getString("poids"); System.out.println(id + "\t" + poids + "\t\t" ); } } catch (ClassNotFoundException e) { System.err.println("Le driver n'a pas été trouvé."); e.printStackTrace(); } catch (SQLException e) { System.err.println("Erreur lors de la connexion à la base de données."); e.printStackTrace(); } finally { if (resultat != null) { try { resultat.close(); } catch (SQLException e) { e.printStackTrace(); } } if (statement != null) { try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connexion != null) { try { connexion.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
Etape 2
Livrable : easyline/mission6/…
- Réaliser l’interface DAO de la classe bagage https://frebourg.es/java/#mapping
- Réaliser l’insertion d’un bagage.
- Réaliser l’interface DAO de la classe voyageur et de la classe adresse postale
- Réaliser l’insertion de deux voyageurs avec leurs bagages et leur adresse postale.
- Réaliser l’affichage d’un voyageur contenu dans la base de données avec ses bagages et son adresse postale.
- Réaliser l’affichage de tous ses voyageurs.