- Spring Boot Tutorial for Beginners: Step-by-Step Guide
- Introduction To Spring Boot
- Challenges of Spring framework, the need of Spring Boot
- Spring Architecture
- Spring IOC Container
- Creating First Spring Boot Project and understanding the project structure
- Spring Boot Application Properties
- Understanding Spring Beans
- Dependency Injection
- Spring Context
- Spring Boot Annotations
- Understanding Spring Boot Auto Configuration
- Spring MVC Explained: Architecture & Request Flow Diagram
- Controller Components
- Restful API Development
- Data Binding and Validation
- Exception Handling
- Interceptors
- Spring Data JPA Introduction
- JPA Repository Interface
- Entity Mapping
- Fetching Strategies
- Repositories and Query Methods in JPA
- Setting up MySQL-DB with Spring data JPA
- JPQL and Native Queries
- Paging and Sorting in Spring Data JPA
- Optimistic and Pessimistic Locking
- Transactions
- Setup a Spring boot application with MVC and JPA
- Spring boot Dev tools
- Auditing and Advance Auditing with Hibernate Evers
- Restclient
- Logging in Spring boot
- Spring boot Actuator
- Swagger API Documentation
- Spring Security Basic Introduction
- Cross-Site Request Forgery (CSRF)
- Cross-Site Scripting (XSS)
- SQL Injection
- Internal Working of Spring Security Basic
- Internal Working of Spring Security Advance
- Configuring SecurityFilterChain
- Understanding JWT
- JWT Creation and Verification
- Signup and Login using JWT
- Authenticating requests using JWT Part 1
- Authenticating requests using JWT Part 2
- Spring Security Exception Handling
- Spring Security Advance Introduction
- JWT - Refresh Token and Access Token
- Using Two Tokens instead of One
- OAuth2 Client Authentication Part 1
- OAuth2 Client Authentication Part 2
- User Sessions management with JWT
- Role based Authorization
- Granular Authorization with Authority
- Security Methods Annotations
- Introduction to Testing in Spring Boot
- Understanding JUnit and AssertJ
- Unit Testing vs Integration Testing
- Unit Testing the Persistence Layer
- Setting Up TestContainer
- Understanding Mockito
- Unit Testing the Service Layer
- Integration Testing the Presentation Layer
- JaCoCo Test Report Generation
- Introduction and Setup Production Database with RDS in AWS
- Spring Profiles
- Deploy Spring Boot Application on Elastic Bean Stalk Service
- Setup CI/CD with AWS Code Pipeline
- Database Migration in production using Flyway
- Introduction to Aspect-Oriented Programming
- Declaring Pointcuts in AOP
- Declaring Advice in AOP
- Spring Proxy and Internal working of AOP
- Real-world use cases of AOP
- Introduction to Caching
- Spring Boot Default Caching
- Redis Cache in Spring Boot
- Database Transactions and ACID Properties in RDBMS
- Concurrent Transaction Management and Transaction Isolation Levels
- Transactional Annotation in Spring Boot
- Optimistic and Pessimistic Transaction Locks in Spring Boot Data JPA
- Microservice: Introduction to the Microservice Architecture
- Microservice: Setting Up the Inventory Management System
- Microservice: Service Registration and Service Discovery with Eureka
- Microservice: Spring Cloud API Gateway
- Microservice: Open Feign Microservice Communication
- Microservice: Open Feign Microservice Communication Advanced
- Microservice: Circuit Breaker, Retry, and Rate Limiter with Resilience4J
- Microservice Advance: Introduction to the API Gateway Filters
- Microservice Advance: Authentication in the API Gateway using custom Gateway Filters
- Microservice Advance: Centralized Configuration Server using GitHub
- Microservice Advance: Refresh Configuration without Restart using Centralized Configuration
- Microservice Advance: Distributed Tracing using Zipkin and Micrometer
- Microservice Advance: Centralized Logging with the ELK stack
- Introduction to Apache Kafka
- Kafka Architecture
- Installing Kafka and Kafka Visiualisation Tool
- Configuring Kafka with Spring Boot
- Advance Kafka Configuration with Spring Boot
- Kafka Schema registry with Confluent