Module 1: Spring Boot Framework Internals
Module 2: Spring Boot Data JPA
Module 3: Spring MVC
Module 4: Restful Web services
Module 5: Micro services with Spring Cloud
Module 6: Docker & Docker-compose (Containerization Deployment)
Module 7: Monitoring micro services Metrics & Health (Prometheus & Grafana)
Module 8: Kubernetes Deployment in Google Cloud Platform
Module 9: 200 + Interview Guide
Module 1: Spring Boot Framework Internals
Module 2: Spring Boot Data JPA
Module 3: Spring MVC
Module 4: Restful Web services
Module 5: Micro services with Spring Cloud
Module 6: Docker & Docker-compose (Containerization Deployment)
Module 7: Monitoring micro services Metrics & Health (Prometheus & Grafana)
Module 8: Kubernetes Deployment in Google Cloud Platform
Module 9: 200 + Interview Guide
Module 1: Spring Boot Framework Internals
Module 2: Spring Boot Data JPA
Module 3: Spring MVC
Module 4: Restful Web services
Module 5: Micro services with Spring Cloud
Module 6: Docker & Docker-compose (Containerization Deployment)
Module 7: Monitoring micro services Metrics & Health (Prometheus & Grafana)
Module 8: Kubernetes Deployment in Google Cloud Platform
Module 9: 200 + Interview Guide
Application Types
Standalone Application
Web Application
Distributed Application
Spring V/s Spring Boot
Spring Boot Features
Environment setup
Parent Project in Boot
Boot Dependencies/Starters
@SpringBootApplication Annotation
Spring Boot Bootstrapping process(run() internal logic)
Component Scanning
Spring Bean(Eager Loading V/s Lazy Loading)
Spring Bean Eager 2 Lazy conversion
Spring Boot Bean Lifecycle methods
By using interface methods
By using annotations
Spring Bean Scopes
Singleton
Prototype
Request
session
Auto Configuration
Embedded Servers
Tomcat
Jetty
Undertow
Stereo type annotations
@Component
@Controller
@RestController
@Service
@Repository
Dependency Injection
Setter Injection
Constructor Injection
Field Level Injection
Setter Injection V/s Constructor Injection
Spring Boot jar generation & execution
IOC Containers, Auto wiring modes & Qualifier
Banners in Spring Boot
Runners in Spring Boot
Application Runners
Command Line Runners
Logging Framework
Reading keys from .properties/yml
@PropertySource with @ConfigurationProperties
@PropertySource with @Value
Singleton scope V/s Singleton Design Pattern
Annotations
@Configuration
@Bean
@Autowired
@Qualifier
@ConfigurationProperties
@PropertySource
@Value
@Order
@Lazy
@Primary
@SpringBootApplication
@Lookup
@Import
Module 2: Spring Data JPA
What is Persistence Layer?
What is Spring Data?
ORM Basics
JPA Annotations
CRUD Repository & JPA Repository
Pre-defined Repository Methods
@Query Annotation
Native SQL Queries using @Query
HQL Queries using @Query
Positional& Named Parameters
Find By Methods in Spring Data JPA
Design Custom methods using @Query
Pagination using JPA
Sorting using JPA
Generators
Schema Generation Create/update /validate create-drop
What is Web Application?
MVC Architecture?
Front Controller Design Pattern
Spring MVC Components
Dispatcher Servlet
Handler Mapping
View Resolver
Model and View
@ModelAttribute
@Controller Annotation
Send Data Controller to UI
Send Data UI to Controller
Embedded Containers
Embedded Database (H2)
Read Properties from property files
properties V/s application.yml
Introduction to Web Services
Soap vs Rest
Query String vs PathParams
REST Architecture Principles
Rest Resource & Rest Client
HTTP Methods,Http Status codes & Messages
CRUD operation using Rest API
Exception Handling in Spring Boot
@RestController V/s @Controller
Swagger Documentation
Rest Template Communication
OAuth2 Implementation
@RequestBody V/s @ResponseBody
@RequestParam V/s @PathVariable
Monolithic vs Micro Services
Micro Services principles
Micro Services challenges
Micro Services advantages & Micro Services architecture
Twelve Factor Principles
Service Registry & Discovery(Eureka Server)
Services Design using Rest API
Services communication using Rest Template
Services communication using Feign Client
API Gateway(ZuulProxy) creation for Micro Services
Ribbon Load Balancer.
Distributed Tracing using zapping & sleuth
Fault Tolerance using Circuit Breaker
Spring Boot actuators & DevTools
Admin Server & Admin Client
Apache Kafka integration with Micro Services
Centralized Configuration
Spring Boot Config Server & spring Boot config Client
Spring Boot Profiles
Introduction to Dockers
Docker Architecture
Understanding Docker Hub & Installing Docker
Creating Docker Images using Docker File
Deep Dive of Important Docker Commands
Publishing Docker images from your local to remote Docker hub Repository
Deep dive on Docker-compose
Micro services deployment using Docker-Compose
Introduction to Kubernetes
Deep dive of Kubernetes Internal Architecture
GCP Account Setup & Creating K8s Cluster
Exploring K8s cluster & Establish connection
Deep dive on Kubernetes YAML Configuration
Kubernetes YAML Configurations for applicable Micro services
Create Environment Variables inside K8s Cluster using ConfigMap
Deploying our Micro services to Kubernetes Cluster
Kubectl Commands and validating our micro services deployed into K8s cluster
Automatic Self-healing inside Kubernetes Cluster
Automatic Rollout & Roll back inside Kubernetes Cluster
Logging & Monitoring inside Kubernetes Cluster
Auto scaling inside Kubernetes cluster using HPA
Deleting Kubernetes Cluster inside GCP
Different approaches to monitor micro services
Setup Micrometer inside micro services
Setup of Prometheus to monitor micro services
Setup of Grafana to monitor micro services with inbuilt dashboards
Building Custom Dashboards inside Grafana
Sending alerts using Grafana when service is down
GitHub
Maven
Jenkins
Docker
Kubernetes
SonarQube/PMD
Copyright 2022, All Right Reserved Techie Frogs