0

ecommerce/course.login

Java et les bases de données avec JDBC, Hibernate et JPA

Connectez votre application Java ou votre application Web Java EE à MySQL, Oracle, Postgres et bien d'autres

4.7
(239 ratings) 1637 students



What you will learn

Introduire les technologies JDBC
Hibernate et JPA
Comment adapter l'architecture d'une application Java
La notion de couche logicielle avec la couche dite "Repository"
Le problème de la gestion transactionnelle et ses conséquences sur le modèle Objet avec le Lazy loading
Les Data Transfer Object (DTO)

Who should take this training

Prerequisites

  • Compréhension fondamentale de Java

Target audience

  • Développeurs Java qui souhaitent apprendre l'API de persistance Java (JPA) avec Hibernate Professionnels travaillant sur les technologies Java/JavaEE/Spring

About this training

La très grande majorité des applications va devoir conserver les données manipulées sur le long terme, on utilise pour ce faire des systèmes de gestion de bases de données. Il en existe de différents types mais celui dont on va parler dans ce cours et le plus répandu sont les bases de données relationnelles comme par exemple MySQL, Oracle, SQL Server ou PostgreSQL.

Java répond depuis longtemps à ce besoin via une API nommées JDBC que l'on peut traduire par Java Database Connectivity. C'est une API de Java Edition Standard, vous y avez accès avec un JDK / JRE.

Mais JDBC s'avère assez vite assez fastidieux à utiliser et depuis près de 20 ans on utilise également des librairies plus avancées que l'on appelle framework ORM (Object Relational Mapping) et dont le meilleur exemple est sans conteste Hibernate de RedHat.

Hibernate est un framework ORM parmi d'autres, chacun ayant ses spécificités, mais la plupart sont compatibles avec une norme qui permet l'interchangeabilité des framework ORM nommée JPA (Java Persistence API) et qui fait partie intégrante de Java EE / Jakarta EE.

Dans ce cours nous allons introduire les technologies JDBC, Hibernate et JPA mais ce n'est pas tout. Nous allons également voir comment adapter l'architecture d'une application Java de bureau ou une application Web pour tenir compte de ces technologies.

Nous verrons la notion de couche logicielle avec la couche dite "Repository", le problème de la gestion transactionnelle et ses conséquences sur le modèle Objet avec le Lazy loading et les Data Transfer Object (DTO).

Comme toujours ce cours fera la part belle aux travaux pratiques avec un atelier fil rouge, des quizz et des exercices complémentaires.

Course Language : FR
On-demand video
Full lifetime access to videos
Downloadable resources
Assignments
Certificate of Completion

Training options

Only Videos

$ 25

  • Full lifetime access to videos
  • Downloadable resources
  • Certificate of Completion
  • Hours of Individual Coaching

Blended

$ 325

  • Full lifetime access to videos
  • Downloadable resources
  • Certificate of Completion
  • 10 Hours of Individual Coaching
Save 10%

Blended

$ 600 $ 562.5

  • Full lifetime access to videos
  • Downloadable resources
  • Certificate of Completion
  • 20 Hours of Individual Coaching
Save 20%

Blended

$ 925 $ 740

  • Full lifetime access to videos
  • Downloadable resources
  • Certificate of Completion
  • 30 Hours of Individual Coaching

Course Content

Section 1 : Mise en place de l'environnement
Ne restez pas seul : Accès au serveur discord 00:37 mins
Installer le serveur de bases de données 06:40 mins
Installer le client DBeaver et se connecter à MySQL 04:36 mins
Créer la base de données TENNIS 10:22 mins
Section 2 : Opérations de base en JDBC
Première connection 07:19 mins
Lire une ou plusieurs lignes d'une table 09:13 mins
Terminer proprement la requête 02:01 mins
Requêtes paramétrées : PreparedStatement 06:30 mins
Ecrire dans la base de données 04:38 mins
La transaction (Commit / rollback) 09:17 mins
Section 3 : JDBC dans les applications
La classe Datasource 06:03 mins
Le pool de connexion 07:42 mins
Le Repository 05:07 mins
Première implémentation de Repository 12:42 mins
Partage de la Datasource 11:32 mins
Auto-incréments 04:56 mins
Exercice 1: Ecrire les classes entité métier et repository relatives à la table TOURNOI 09:56 mins
Section 4 : Interaction avec la logique métier
Le service métier "passe-plat" 04:54 mins
Un service métier plus complexe 28:03 mins
Un service transactionnel avec les DAO (Data Access Object) 08:10 mins
Un service transactionnel avec les Repository 06:25 mins
La couche de contrôle 14:05 mins
Section 5 : Introduction aux frameworks ORM
Les limites de JDBC 03:48 mins
Qu'est ce qu'un framework ORM 02:40 mins
Section 6 : Hibernate : Ce qu'il faut savoir pour bien démarrer
Hibernate qu'est-ce-que c'est? 02:03 mins
Configurer Hibernate ORM 05:58 mins
Mapping rapide d'une entité 04:05 mins
Session et lecture d'un enregistrement 09:08 mins
Insertion et gestion transactionnelle 12:08 mins
Modification d'un objet persistant 06:32 mins
Portée de la session Hibernate 09:09 mins
Modification d'un objet non persistant 05:36 mins
Suppression d'un enregistrement 06:20 mins
Portabilité : le Dialect Hibernate 03:24 mins
Le mapping des colonnes en détail 07:49 mins
Exclure une propriété avec @Transient 02:57 mins
Exercice 8 : Mapping de la classe Score 08:52 mins
Section 7 : Hibernate : entités liées
Associations Many to One avec clé étrangère 08:38 mins
Lazy loading 05:49 mins
Proxy Hibernate 03:44 mins
Initialiser un Proxy 08:04 mins
Les DTO (Data Transfer Object) 10:59 mins
DTO pourquoi et comment ? 09:45 mins
Exercice 9 : Associations Many to One entre Match et Joueur 15:13 mins
Associations One to One avec clé étrangère 08:29 mins
Exercice 10 : Association One to One entre Score et Match 09:47 mins
Associations Many to Many 11:08 mins
Modifications d'objets liés 06:57 mins
Insertion d'objets liés et cascade persist 13:13 mins
Suppression d'objets liés et cascade delete 08:56 mins
Section 8 : Hibernate : Requétage HQL
Lecture d'une liste d'objets 10:03 mins
Lecture paramétrée 03:53 mins
Jointures paramétrées 07:25 mins
Dynamic fetching 02:24 mins
Requêtes nommées (NamedQuery) 04:28 mins
Section 9 : JPA : La spécification qui normalise les solutions ORM
JPA qu'est ce que c'est ? 04:42 mins
Le contexte de Persistence 04:06 mins
La classe EntityManager 05:04 mins
Lecture d'un objet avec JPA 02:10 mins
Opérations en écriture avec JPA 06:03 mins
JPQL 07:12 mins
Section 10 : Intégration à une application Web
Architecture cible 01:42 mins
Intégration dans IntelliJ Community 07:46 mins
Afficher la listes des joueurs et joueuses dans une page Web 10:31 mins
Utiliser un annuaire JNDI 11:36 mins
Section 11 : Bonus
Rappels : "Installer" Java 11 Open JDK 06:22 mins
Rappels : Installer IntelliJ Community Edition 11:35 mins
Rappels : Utiliser Maven avec IntelliJ 05:49 mins

Request more information

Similar courses

Join our mail list for news