Mettre en oeuvre le pattern repository avec Spring Data

Les applications Java accèdent régulièrement à des données mais en les manipulant en tant qu'objets. Cela suppose une couche d'abstraction, le pattern repository représente cette abstraction. Spring Data en fournit plusieurs implémentations, aussi bien pour les bases de données relationnelles que NoSQL.

Ce cours vous permettra de maitriser ce pattern repository et de le mettre en oeuvre avec Spring Data.

(10,5 heures)

En présentiel ou en classe virtuelle
En français ou en anglais
Public

Développeurs et développeuses Java, architectes

Accessible aux personnes en situation de handicap

Délai

Le cours peut être organisé dans un délai d'un mois.

Objectifs

A l'issue du cours vous saurez:

Prérequis

Ce cours demande une connaissance solide des bases de la programmation Java (principes de la programmation orientée objet, types génériques, annotations, expressions lambda), de Spring et Spring boot et une habitude de travailler avec Eclipse ou IntelliJ.

Méthodes pédagogiques

Programme détaillé

Introduction
nio
  • Les différents types de base de données (SQL, NoSQL).
  • L'exécution non bloquantes des opérations I/O.
  • Le rôle d'un pool de connexions.
  • Les transactions et les principes ACID.
  • Le mapping objet / base de données.
  • Présentation du pattern Repository et de Spring Data.

Mise en pratique: prise en main d'une application Spring (accès aux données, API REST, tests).

Les repositories Spring Data
CrudRepository
  • le mapping des entités du modèle vers la base de données avec les annotations Spring.
  • Les opérations create, read, update, delete.
  • La pagination et le classement pour réaliser des requêtes paginées.
  • les requêtes par l'exemple pour les recherches multicritères.
  • Les requêtes dérivés pour les recherches personnalisées.
  • L'annotation @Query pour les requêtes natives.
  • L'application des transactions.
  • Les spécificités de deux déclinaisons de Spring Data: Spring Data JPA et Spring Data ElasticSearch.

Mise en pratique: création de repositories JPA et ElasticSearch, utilisation de ces derniers dans une application backend.

L'extension Spring Data REST
@Projection
  • Principe.
  • Les projections pour controler la représentation des ressources.
  • Les recherches.
  • La gestion des erreurs et le mapping vers les codes HTTP.
  • Les observateurs d'évènements.

Mise en pratique: utilisation de Spring Data REST pour exposer les repositories en REST.

Prix et financements

2 12

Réduction de 50% pour les associations reconnues d'utilité publique.

Sources de financements pour les organisations françaises:

Contact

Questions, inscriptions, demande d'adaptation: