Internet Applications - Technologies JAVA & XML
Spring : Développer avec le framework Spring
Reference : SPRIN2


Prochaines sessions

Code CPF
194595
Objectifs
- Spring est le framework Java le plus répandu pour le développement d’applications d’entreprises offrant une réelle alternative à Java EE. Ses atouts : faciliter le développement et les tests, améliorer les performances, proposer de bon design pattern aux développeurs. Spring s’appuie principalement sur l’intégration de trois concepts clés : l’inversion de contrôle ou injection de dépendance, la programmation orientée aspect et une couche d’abstraction qui permet d’intégrer d’autres frameworks et bibliothèques avec une plus grande facilité.
Pré requis
- De bonnes connaissances du langage Java sont demandées pour aborder cette formation Spring.
Modalités pédagogiques
Cours dispensé en mode présentiel avec une alternance d’apports théoriques et méthodologiques, et de mises en situations pratiques
Public visé
Inscription
Programmes de Spring : Développer avec le framework Spring
Introduction au framework Spring
- Présentation du framework, concepts de conteneur léger
- L’offre de Pivotal Software, positionnement vis à vis de Java EE
- Pattern IoC et injection de dépendance
- Spring et l’injection de dépendance
- Exemple basique
- Configuration XML, par annotations, Spring Boot
Spring Cœur
- Les Beans, BeanFactory et ApplicationContext
- Modes singleton ou prototype
- Gestion des propriétés, « collaborateurs »
- Déclaration de beans via annotations, les différents stéréotypes
- Méthodes d’injection de dépendance, l’annotation @Autowired, injection par constructeur
- Explorer un contexte de beans via STS
Spring AOP
- Terminologie utilisée : aspect, joinpoint, advice, shortcut, weaving
- Les différents types d’ « advice » : around, before, throws, after
- Objectifs et fonctionnalités AOP de Spring
- Intégration avec le framework AspectJ
Autres technologies cœur
- L’interface Resource
- Validation, data-binding et conversion de types
- SpEL
Applications Web avec Spring MVC
- Rappel MVC, architecture Spring et contrôleurs Spring
- WebMvcConfigurerAdpater
- Résolution des vues, Thymeleaf, intégrations avec autres techniques de vues
- Gestion des locales et des thèmes, traitements des exceptions
- Contrôleurs REST
- Mise en place de la sécurité
- CORS Filter, authentification oAuth2
Spring Data et l’accès aux données (JDBC / Hibernate / JPA / NoSQL)
- L’objectif de Spring Data, les interfaces Repository et CrudRepository
- Les types de requêtages
- Spring Data JPA
- Requêtage DSL et JPA
- JPATemplate, JdbcTemplate, HibernateTemplate
- Gestionnaire de transaction
- Spring Data NoSQL MongoDB
- Requêtage MongoDB et QueryDSL
- Spring Data NoSQL MongoDB
- Utilisation du template
- Spring Data REST
- Spring Web Flux
Spring et les tests
- IoC adapté aux tests, tests unitaires et d’intégration
- Tests unitaires et Mock Objetcs
- Classes de support pour le test unitaire
- Apports de Spring pour les tests d’intégration
- Annotations pour les tests
- Tests d’intégration de Spring MVC
Spring et l’intégration
- Intégration avec des services distants (JMS, JAX-WS, Rest)
- Intégration avec serveur de mail
- Planification de jobs
- Utilisation de cache