Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Devenir FullStack Spring boot / Angular par la pratique
Resources de l'application
Code source: Backend
Code source: Frontend
Refer a friend and get 30% discount for both of you
Introduction au framework Spring boot
C'est quoi Spring Boot? (10:37)
C'est quoi l'inversion de controle? (2:32)
C'est quoi un Spring bean? (2:58)
Le cycle de vie d'un Spring bean (4:23)
L'annotation @Component (2:10)
La diiference entre @Component / @Repository / @Service (3:51)
L'annotation @Autowired (3:42)
Creer et comprendre un projet Spring Boot
Comment creer un projet Spring boot? (16:43)
Comprendre la structure du projet (13:46)
Comment ajouter une nouvelle dependance (7:52)
Premiere API REST 'Hello World' (43:45)
Le plugin Lombok
Installation et configuration Lombok (2:20)
Les annotations Lombok pour ce cours (10:21)
Introduction au projet
L'idee du projet (4:06)
Concevoir le diagramme des classes (UML) (17:22)
La mise en place du projet
Créer un nouveau projet avec les dependences nécessaires (2:58)
Démarrer et tester l'application (6:06)
Spring Data et connexion à la base de données
Configurer la BDD (5:02)
Configure le projet et se connecter a la BDD (16:46)
L'annotation @Entity (1:30)
L'annotation @Table (4:00)
L'annotation @Id (4:17)
L'annotation @GeneratedValue (6:03)
L'annotation @Column (4:34)
L'annotation @OneToMany (6:42)
L'annotation @ManyToOne (6:32)
L'annotation @OneToOne (7:32)
Implémenter le diagramme des classes
Creer les entites (19:46)
Ajouter le mapping (relations) entre les entités (12:20)
Optimiser le code et ajouter le JpaAuditing (13:49)
Implémenter les repositories
C'est quoi un Repository (JpaRepository)? (2:39)
Comprendre le SDP (Spring Data Pattern) (19:59)
L'annotation @Query avec JPQL (9:37)
L'annotation @Query avec SQL natif (3:45)
Implémenter les DTOs
C'est quoi et pourquoi utiliser un DTO (8:57)
Comment créer un DTO (3:13)
Le mapping entre Entité et DTO et vise vers ça (7:18)
Implémenter tout les DTOs (19:56)
La validation des objets avec JSR-303
Pourquoi valider les objets? (5:32)
Les annotations de validation (11:49)
Personaliser les messages de validation (3:57)
Implémenter un validateur générique des objets (12:56)
Créer des exceptions personnalisées
Pourquoi des exceptions personnalisées? (2:19)
Créer l'exception des objets non valides (4:16)
Créer l'exception des opérations non permises (3:25)
Implémenter les services
Ma façon de développer les services et les autres façons (a vous de choisir 🙂 ) (2:38)
Créer une interface générique qui groupe les méthodes de base (3:51)
Implémenter le User service (19:57)
Implémenter le Account service (21:23)
Implémenter le Address service (3:27)
Implémenter le Contact service (3:35)
Implémenter le Transaction service (11:25)
Implémenter les règles de gestion de l'application (20:19)
Implémenter le Statistiques (Dashboard) service (19:15)
Le gestionnaire des exceptions global
C'est quoi un gestionnaire d'exception? (5:31)
Implémenter le gestionnaire d'exception global (11:43)
Implémenter les contrôleurs
Les conventions de nommage des resources REST (8:18)
Ce qu'il faut vraiment retenir lors de la création des contrôleurs (6:11)
Implémenter le User controller (9:10)
Implémenter le Address controller (5:05)
Implémenter le Account controller (2:39)
Implémenter le Contact controller (3:35)
Implémenter le Transaction controller (3:04)
Implémenter le Statistics controller (6:03)
Tester et optimiser
Tester l'application et corriger les erreurs (Partie 1) (38:55)
Tester l'application et corriger les erreurs (Partie 2) (28:30)
Sécuriser l'application avec un JWT token
Pourquoi sécuriser une API REST (3:08)
Étendre la classe User (5:18)
Implémenter la classe SecurityConfig (16:21)
Implémenter la classe UserDetailsService (5:14)
Implémenter la classe JwtAuthenticationFilter (22:41)
Implémenter la classe AuthenticationController (19:56)
Comment fonctionne la sécurité en Spring? (9:57)
Étendre le JWT token et ajouter des informations utiles (4:43)
Tester et ameliorer
Tester l'application avec l'implémentation de la sécurité (40:37)
Bonus 😊
Générer la documentation de l'API avec OpenApi (14:19)
Introduction au framework Angular
Les outils du développement Angular (6:20)
Installer Angular CLI (3:12)
Générer une application Angular (6:43)
Quels fichiers sont générés par Angular CLI ? (26:02)
Préparation et mise en place de notre projet
Sketcher les interfaces (8:09)
Créer un nouveau projet Angular (1:25)
Ajouter / Installer Bootstrap (11:54)
Ajouter / Installer font-awesome (5:49)
Installer JQuery & Bootstrap JS (1:46)
Développement des interfaces graphique (HTML / CSS)
Interface Login (16:02)
Interface Register (4:35)
Composant Menu (5:12)
Dashboard utilisateur (15:18)
Extraire les composants et comprendre @Input / @Output (23:25)
Interface -My transactions- (6:09)
Interface -My contact list- (4:44)
Interface -New transaction- (7:33)
Interface -New contact- (1:54)
Interface -Profile- (6:37)
Interface -Bank customer- (7:58)
Le routage en Angular
C'est quoi le routage? (1:42)
Ajouter une nouvelle route (13:47)
Passer et récupérer un paramètre depuis L'URL (10:14)
Ajouter le routage de l'application (38:26)
Premiers pas avec le HTTP module
Créer un premier service (11:30)
Effectuer une premiere requête GET vers une API REST (24:27)
Y'a-t'il un moyen pour simplifier l'écriture des services? (1:16)
Générer les services (7:49)
Tester un service (7:10)
Implementer un intercepteur HTTP pour injecter le JWT token (10:21)
Implémenter la logique des interfaces
Implementer la page Register (25:59)
Implementer la page Login (9:47)
Decoder le JWT token et rediriger l'utilisateur selon son rôle (6:29)
Sécuriser l'accès au interfaces avec un guard (22:37)
Adapter le HTTP interceptor et récuperer automatiquement le JWT token (2:36)
Implémenter la page My transactions (16:31)
Implémenter la page My contacts (5:39)
Implémenter la page New contact (8:10)
Modifier un contact (9:10)
Supprimer un contact (10:38)
Effectuer une nouvelle transaction (20:13)
Implementer l'interface Administrateur (41:08)
Implementer le dashboard utilisateur (43:06)
Démarrer et tester l'application
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock