Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
enseignement:d14:tp:tp6 [2014/02/10 17:01] – Emmanuel Bruno | enseignement:d14:tp:tp6 [2023/09/20 18:52] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
Attention, Java utilise par défaut IPV6 et cela pose des problèmes en TP pour forcer IPV4 suivre les instructions suivantes : [[java: | Attention, Java utilise par défaut IPV6 et cela pose des problèmes en TP pour forcer IPV4 suivre les instructions suivantes : [[java: | ||
- | Pour éditer | + | Ce TP peut être fait en utilisant en particulier postgresql (installé en salle de TP) ou la base de données |
- | ===== Utilisation simple de JDBC ===== | + | Il est aussi possible d' |
- | | + | sous linux mint en root |
- | - Créer une classe que se connecte à votre base de donnée | + | |
- | - Ajouter une méthode qui affiche la liste des journaux en utilisant un Statment | + | export http_proxy=' |
- | - Créer une fonction | + | export https_proxy=' |
- | - En utilisant un PreparedStamement, | + | |
+ | # Add the repository to your APT sources | ||
+ | sudo echo deb https:// | ||
+ | |||
+ | sudo apt-get update | ||
+ | sudo apt-get install -y docker.io cgroup-lite apparmor | ||
+ | |||
+ | sudo usermod -a -G docker $USER | ||
+ | |||
+ | Edit / | ||
+ | export http_proxy=' | ||
+ | |||
+ | service docker restart | ||
+ | |||
+ | docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=ArraujUrb4 -d mysql | ||
+ | |||
+ | Pour éditer la base de données vous pouvez utiliser | ||
+ | |||
+ | ===== Utilisation simple | ||
+ | - Avec le script {{: | ||
+ | - Créer une classe que se connecte à votre base de donnée. Pensez à mettre en place correctement les librairies nécessaires. Pour le moment, la connexion | ||
+ | - Ajouter une méthode qui affiche la liste des journaux en utilisant un '' | ||
+ | - Créer une méthode '' | ||
+ | - En utilisant un '' | ||
===== Utilisation des métadonnées ===== | ===== Utilisation des métadonnées ===== | ||
Ligne 20: | Ligne 43: | ||
===== Batch Update ===== | ===== Batch Update ===== | ||
- Utiliser les batch update pour ajouter des journaux en lisant un fichier texte formaté ('' | - Utiliser les batch update pour ajouter des journaux en lisant un fichier texte formaté ('' | ||
+ | |||
+ | <code java> | ||
+ | // Création d'un requete | ||
+ | PreparedStatemen pstmt = | ||
+ | conn.prepareStatement(" | ||
+ | |||
+ | //On ajoute les exécution une à une ... | ||
+ | conn.setAutoCommit(false); | ||
+ | |||
+ | // On fixe les paramètres de la première requête à exécuter | ||
+ | pstmt.setString( 1, " | ||
+ | pstmt.setString( 2, " | ||
+ | pstmt.setString( 3, " | ||
+ | // Et on l' | ||
+ | pstmt.addBatch(); | ||
+ | |||
+ | // On fixe les paramètres de la seconde requête à exécuter | ||
+ | pstmt.setString( 1, " | ||
+ | pstmt.setString( 2, " | ||
+ | pstmt.setString( 3, " | ||
+ | // Et on l' | ||
+ | pstmt.addBatch(); | ||
+ | |||
+ | // On ajoute autant de requêtes que nécessaire | ||
+ | //Par exemple en lisant un flux de données. | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | . | ||
+ | //On créée un tableau d' | ||
+ | //et on execute toutes les mises à jour en une fois. | ||
+ | int[] count = stmt.executeBatch(); | ||
+ | |||
+ | //On valide les changements. | ||
+ | conn.commit(); | ||
+ | </ | ||
===== Utilisation d'un pool de connexion ===== | ===== Utilisation d'un pool de connexion ===== | ||
En utilisant la classe suivante, utiliser maintenant un pool de connexion au lieu d'une variable globale. | En utilisant la classe suivante, utiliser maintenant un pool de connexion au lieu d'une variable globale. | ||
+ | L' | ||
<code java DatabaseManager.java> | <code java DatabaseManager.java> | ||
Ligne 111: | Ligne 170: | ||
===== Pour finir ===== | ===== Pour finir ===== | ||
- | - Créer une interface '' | + | |
- | | + | |
- | - Créer une instance de Chien | + | |
- | - D' | + | * Ajouter des méthodes spécifiques à la DAO. |
- | - De modifier l' | + | |
- | - De faire une mise à jour dans la base de données avec '' | + | |
- | - Et finalement de supprimer le Chien avec remove. | + | |
- | - Implanter des méthodes qui permettent de retrouver et d' | + | |
- | - Chien findById(...) | + | |
- | - List<Chien> findByName(...), ... | + | |
- | | + | |
{{tag> | {{tag> | ||
---- struct data ---- | ---- struct data ---- | ||
+ | metadata.level | ||
+ | metadata.Type | ||
+ | metadata.Nom | ||
+ | metadata.Enseignements : D14 | ||
+ | metadata.Promotions | ||
+ | metadata.Technologies : Java, JDBC | ||
+ | metadata.Thèmes | ||
+ | metadata.Description : | ||
---- | ---- | ||