Projet de démonstration des fonctionnalités et des intégrations possibles avec le framework Spring Boot.
Tutoriel sur Spring Boot Actuator, qui fournit des fonctionnalités prêtes à l'emploi pour surveiller et gérer votre application (points de terminaison de santé, métriques, etc.).
Tutoriel sur la Programmation Orientée Aspect avec Spring Boot. Apprenez à séparer les préoccupations transversales (comme la journalisation ou la sécurité) de votre logique métier pour un code plus propre et modulaire.
article
Tutoriel sur la mise en place de l'audit pour tracer les modifications de vos données.
Découvrez comment customiser la bannière affichée au démarrage de votre application Spring Boot pour y ajouter votre touche personnelle ou des informations utiles.
article
Découvrez différentes approches pour gérer la concurrence et le parallélisme dans vos applications Spring Boot.
Tutoriel sur la programmation asynchrone avec Spring Boot pour améliorer la performance et la scalabilité de vos applications.
Tutoriel sur la création d'applications web réactives et non-bloquantes avec Spring WebFlux.
Explorez l'utilisation des Virtual Threads pour simplifier l'écriture de code concurrent hautement performant.
Apprenez à sécuriser vos applications avec Spring Security.
Implémentez l'authentification Basic Auth, une méthode simple et standard pour protéger vos endpoints.
article
Sécurisez vos API de manière stateless avec les JSON Web Tokens (JWT).
article
Mettez en place un contrôle d'accès basé sur les rôles (RBAC) pour gérer finement les permissions de vos utilisateurs.
article
Intégrez une authentification LDAP pour déléguer la gestion des utilisateurs à un annuaire d'entreprise.
Configurez un serveur d'autorisation OAuth2 pour déléguer l'authentification et gérer les accès de manière sécurisée et standardisée.
Tutoriel sur le Spring Expression Language (SpEL), un langage puissant pour interroger et manipuler un graphe d'objets à l'exécution.
Tutoriel sur la validation des données en entrée avec les annotations de Jakarta Bean Validation.
Collection de tutoriels sur différentes stratégies de mise en cache.
Démontre l'utilisation du cache en mémoire de base de Spring Boot.
Intègre le cache haute performance Caffeine pour une gestion plus fine de l'éviction et de l'expiration.
Démontre l'utilisation de Redis comme cache distribué pour une application Spring Boot.
Gérez les évolutions de votre schéma de base de données de manière rigoureuse et automatisée.
article
Utilisez Flyway pour versionner votre base de données avec des migrations basées sur des scripts SQL.
Découvrez Liquibase, une alternative puissante pour le versioning de base de données avec des changements suivis via des fichiers XML, YAML ou SQL.
Tutoriel sur l'intégration d'Elasticsearch dans une application Spring Boot en utilisant Spring Data Elasticsearch pour l'indexation, la recherche plein texte et l'analyse de données.
Tutoriel sur l'utilisation de R2DBC (Reactive Relational Database Connectivity) avec Spring Data R2DBC pour interagir avec une base de données relationnelle de manière réactive.
Tutoriel sur l'utilisation de QueryDSL pour construire des requêtes SQL de manière typée et sécurisée.
Explore différentes techniques pour automatiser les tâches répétitives, notamment la génération de clients d'API (OpenAPI) et de mappers (MapStruct).
artcile
Démontre comment structurer une application en "modulithe" avec des frontières de modules claires et vérifiables.
Créez des applications en ligne de commande (CLI) interactives avec Spring Shell.
Apprenez à utiliser le rechargement à chaud (hotswap) avec Spring Boot DevTools pour accélérer le développement en appliquant les changements de code sans redémarrer l'application.
Tutoriels sur l'intégration de l'IA avec Spring Boot, notamment via la bibliothèque Langchain4j.
Explorez différents moteurs de règles pour externaliser et gérer dynamiquement votre logique métier.
Intégrez Drools, un moteur de règles robuste, pour gérer des règles métier complexes de manière déclarative.
article
Utilisez Easy Rules, une bibliothèque légère, pour créer des règles métier simples et faciles à maintenir.
article
Découvrez RuleBook et son DSL intuitif pour construire des règles métier lisibles et chaînées en Java.
article
Tutoriel sur l'intégration de JMS (Java Message Service) avec ActiveMQ pour une messagerie asynchrone standard et découplée.
Tutoriel sur l'intégration d'Apache Kafka pour construire des systèmes de messagerie asynchrones, distribués et réactifs.
Tutoriel sur l'envoi de notifications (par exemple, email, SMS) depuis une application Spring Boot.
Tutoriel sur la création d'une application de chat en temps réel avec Spring Boot et WebSockets pour une communication bidirectionnelle instantanée.
Tutoriel sur la création d'un service et client gRPC pour une communication haute performance avec Spring Boot.
Tutoriel sur l'intégration avec la blockchain Ethereum en utilisant la librairie Web3j.
Supervisez et monitorez l'état de santé de vos applications.
Utilisez Prometheus pour collecter des métriques et Grafana pour créer des tableaux de bord de visualisation.
article
Déployez Spring Boot Admin pour une interface de monitoring et de gestion dédiée à vos applications Spring.
article
Tutoriel sur l'implémentation de patterns de résilience (disjoncteur, réessai, etc.) avec Resilience4j pour rendre vos applications plus robustes face aux pannes.
Démontre comment utiliser le planificateur Quartz pour une planification de jobs robuste et persistante.
Implémentez Spring Batch pour créer des traitements par lots (batch) robustes et performants pour des tâches comme l'import/export de données ou des traitements périodiques.
article
Découvrez un éventail d'outils et de techniques pour tester vos applications.
Utilisez ArchUnit pour écrire des tests qui valident et maintiennent les contraintes architecturales de votre code (ex: "les services ne doivent pas accéder directement aux contrôleurs").
article
Introduisez du chaos dans votre application avec Chaos Monkey pour tester sa résilience en simulant des pannes et des latences de manière contrôlée.
article
Réalisez des tests de performance et de charge sur votre application avec Gatling pour identifier les goulots d'étranglement.
article
Écrivez des tests paramétrés avec JUnit 5 pour exécuter le même test avec différents jeux de données, rendant vos tests plus concis et efficaces.
article
Découvrez différentes stratégies pour versionner vos API REST afin de gérer les évolutions sans casser les clients existants.
Tutoriel sur la mise en place de la limitation de débit (rate limiting) pour vos API en utilisant la bibliothèque Bucket4j, afin de protéger vos services contre les surcharges.
article
Approche robuste utilisant un Filtre de Servlet pour appliquer des règles de limitation globales (par exemple, par adresse IP) avant que la requête n'atteigne le contrôleur.
Méthode déclarative et propre utilisant la Programmation Orientée Aspect pour protéger des méthodes spécifiques avec une simple annotation, sans modifier le code métier.
Approche directe où la logique de limitation est appelée explicitement depuis le contrôleur, idéale pour des règles simples et spécifiques à un endpoint.
Tutoriel complet sur l'intégration de GraphQL pour créer des API flexibles et performantes.
article
Partie 1 : Mise en place : Initialisez GraphQL dans votre projet Spring Boot.
Partie 2 : Le schéma : Définissez la structure de votre API avec le schéma GraphQL.
Partie 3 : Controllers : Implémentez les résolveurs pour vos requêtes et mutations.
Partie 4 : Tests unitaires : Apprenez à tester efficacement votre API GraphQL.
Partie 5 : Documentation : Découvrez des outils pour documenter et tester votre API.
Partie 6 : Gestion des erreurs : Mettez en place une gestion d'erreurs centralisée et robuste.
Tutoriel sur comment implémenter HATEOAS (Hypermedia as the Engine of Application State) pour enrichir vos API REST avec des liens de navigation, les rendant plus découvrables.
article
Mise en place de l'i18n et du l10n dans un projet springboot.
Tutoriel sur la génération de documents, comme des rapports PDF, en utilisant la bibliothèque JasperReports.
Utilisez Thymeleaf comme moteur de templates pour construire des applications web côté serveur.
Tutoriel sur la création d'applications web riches et interactives entièrement en Java, sans écrire de HTML ou de JavaScript, en utilisant le framework Vaadin avec Spring Boot.
Un exemple d'application CRUD (Create, Read, Update, Delete) complète pour gérer des produits.
Une application Pokédex plus riche pour démontrer la navigation, les vues dynamiques et le data binding.
Implémentez un service pour téléverser et télécharger des fichiers avec Spring Boot.