

Spring-Batch répond à un besoin récurrent : la gestion des programmes batchs écrits en Java.
Spring-Batch est un framework issu de la collaboration de SpringSource et Accenture. Si le framework semble de plus en plus complet et fonctionnel, celui-ci souffre de sa complexité de configuration et reste un peu difficile d’accès malgré les efforts de l’équipe de développement.
Les grandes problématiques abordées par ce framework.
- Traitement « par lot » pour éviter par exemple de charger en mémoire l’ensemble des données traitées par le batch. Ce type de fonctionnement est adapté à des traitements sur de gros volumes de données. De plus, Spring-batch fournit des implémentations de classes permettant de lire ou d’écrire par lot sur divers types de supports (SQL, fichier plat, etc.), ce qui évite de réinventer la roue…
- Gestion des transactions : Spring-batch s’appuie sur la gestion des transactions fournies par Spring, et permet donc de gérer de façon déclarative les transactions dans vos batchs.
- Gestion de la reprise sur erreur, encore une fonctionnalité que le framework vous aide fortement à mettre en œuvre.
- Utilisation de Spring : le développeur qui a l’habitude de Spring peut réutiliser facilement ses notions ainsi que les composants de ce framework tels que les JdbcTemplates ou encore l’intégration à Hibernate…
- Cadre de développement : à mon sens, un des apports les plus fondamentaux de Spring-batch est de proposer un cadre de développement autour de notions communes comme Job, Step, ItemWriter etc., ce qui aide beaucoup à la maintenabilité du code des batchs : un développeur qui doit maintenir différents batchs peut passer de l’un à l’autre, le logiciel est organisé autour des mêmes classes et interfaces.
A l’issue de cette formation vous :
- Saurez situer Spring Batch dans une architecture multi couche Java
- Saurez identifier les problèmes récurrents avec les batch écrits en Java
- Saurez si Spring Batch peut répondre à un de vos besoins (ou pas)
- Aurez intégré les notions principales (citées plus haut)
- Partir de zéro et initialiser des projets Spring Batch
Durée : 3 jours
Public : développeurs objets / Architectes
Prérequis : Bonnes bases en POO Java et avoir suivi une formation d’initiation à Spring Core