0% found this document useful (0 votes)
21 views

JavaExpress - SpringBoot - Microservices Course Content

This document outlines modules for a Java full stack developer course. The course covers topics like Spring Framework, Spring Boot, microservices, Docker, Kubernetes, and event-driven architectures. It includes 12 modules that progress from introductory Spring topics to more advanced microservices and cloud-native concepts.

Uploaded by

newsletter
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

JavaExpress - SpringBoot - Microservices Course Content

This document outlines modules for a Java full stack developer course. The course covers topics like Spring Framework, Spring Boot, microservices, Docker, Kubernetes, and event-driven architectures. It includes 12 modules that progress from introductory Spring topics to more advanced microservices and cloud-native concepts.

Uploaded by

newsletter
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

www.youtube.

com/c/javaexpress
[email protected]
+91 7801007910
Java Express

Updated Course

JAVA FULL STACK DEVELOPER COURSE

Prerequisites for this Course:


 Core Java
 Java 8 : https://bit.ly/java8videos
Modules:
 Module 1 : Introduction to Spring Framework & Spring Boot
 Module 2 : Spring Data JPA & Spring Data Rest
 Module 3 : Building REST APIs with Spring Boot
 Module 4 : Microservices Architecture with Spring Boot
 Module 5 : Introduction to Docker
 Module 6 : Deploying Microservices with Docker and Kubernetes
 Module 7 : Event Driven Microservices (Apache Kafka)
 Module 8 : Testing in Spring Boot (Mockito)
 Module 9 : Spring Boot Security (OAuth2.0 & JWT)
 Module 10 : Spring Boot Integration with Redis
 Module 11 : Microservices Design Patterns (CQRS & SAGA)
 Module 12 : React JS Integration with Spring Boot
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

Module 1: Introduction to Spring Boot


 Overview of Spring Framework
o Introduction to Spring Ecosystem
o Core Concepts : IOC (Inversion of Control)& DI (Dependency Injection)
 What is Spring Boot?
o Introduction to Spring Boot & its key features
o Comparison with traditional Spring framework
o Benefits of using Spring Boot
 Setting Up Development Environment
o Installing Java Development Kit (JDK)
o Configuring IDE (Integrated Development Environment) (e.g., IntelliJ
IDEA, STS)
o Understanding Maven build tool
 Spring Initializer and Project Creation
o Using Spring Initializer to generate Spring Boot projects
o Adding dependencies and configurations
o Exploring basic project structure
 Auto-configuration and Spring Boot Starters
o Understanding auto-configuration and its benefits
o Adding Spring Boot starters for various functionalities
(e.g., Web, JPA, Security)
o Configuration files (application.properties/yaml)
 Running your first Spring Boot application
o Creating a simple Spring Boot application
o Running the application and understanding console logs
o Exploring application functionalities

Module 2: Spring Data JPA


 Introduction to JPA and Spring Data JPA
o Understanding object-relational mapping (ORM) concept
o Exploring Spring Data JPA features and benefits
 Creating and Configuring Entities
o Defining entities representing database tables
o Mapping entity fields to database columns
o Configuring entity relationships (One-to-One, One-to-Many, Many-to-Many)
 Implementing CRUD Operations (Create, Read, Update, Delete)
o Using Spring Data JPA repositories to perform CRUD operations
o Understanding @Repository and @Entity annotations
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

o Building custom queries with methods and JPQL


 Querying Data with JPA Repositories
o Implementing various query methods like findBy
o Using JPA Criteria API for complex queries
o Utilizing Pageable interface for data pagination
 Advanced Query Techniques with Spring Data JPA
o Exploring native SQL queries
o Implementing custom JPA repositories
 Introduction to H2 Database
o Overview of H2
o Connecting to H2 using the H2 Console
 Spring Data Mongo DB
o Basics of Mongo DB and NoSQL databases
o Configuring and using Spring Data Mongo DB
o Repository interfaces for Mongo DB

Module 3: Building REST APIs with Spring Boot


 Introduction to REST APIs
o Understanding REST principles and architecture
o Designing Restful API contracts
 Implementing REST CRUD operations
o Building API endpoints for Create, Read, Update, and Delete operations
o Handling validation and error responses
o Implementing efficient data retrieval
 Handling JSON Data with @RequestBody and @ResponseBody annotations
o Processing JSON data sent in request body
o Sending JSON data as response
o Utilizing Jackson library for JSON serialization and deserialization
 Integrating with Swagger for API documentation
o Generating API documentation using Swagger
o Understanding Open API specification and its benefits
o Providing clear and detailed API documentation for developers
 Exception Handling in Restful Services
o Handling exceptions in Spring Boot
o Custom exception handling for Restful APIs
o Error responses and HTTP status codes
 Consumer Development
o What is Spring RestTemplate?
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

o Creating and configuring a RestTemplate instance


o Sending various HTTP requests (GET, POST, PUT, DELETE)
o Setting request headers and body
o Understanding potential errors and exceptions
 Understanding Spring Boot Profiles
o Introduction to Spring Boot profiles
o Configuring profiles in application properties/yaml
o Configuring databases for different environments
o Environment-specific logging and debugging settings
 Spring Boot DevTools
o Improving development productivity with DevTools
o Automatic application restarts

Module 4: Microservices Architecture with Spring Boot


 Overview of Microservices
o What are microservices?
o Advantages and disadvantages of microservices
o Comparison with monolithic architecture
o Key principles and best practices
 Spring Cloud Overview
 Building Microservices with Spring Boot (Real Time Project)
o Spring Boot as a framework for microservices development
o Building Restful API
o Implementing data access with Spring Data JPA
 Microservices Monitoring with Spring Boot Actuator
o Overview of Spring Boot Actuator
o Exposing and customizing Actuator endpoints
o Monitoring microservices with Actuator
 Service Registration and Discovery
o Introduction to service registration and discovery
o Using Spring Cloud Eureka for service registration
o Discovering services with Eureka clients
 Microservices Communication Patterns
o Inter-service communication using Feign Client
 Spring Cloud Gateway
o Introduction to Spring Cloud Gateway
o API gateway and routing
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

 Load Balancing and Fault Tolerance


o Implementing load balancing with Spring Cloud Ribbon
o Circuit Breaker pattern with Spring Cloud Circuit Breaker
 Distributed Tracing with Micrometer Tracing
o Understanding distributed tracing
o Implementing tracing with Micrometer Tracing and Zipkin
o Visualizing trace data for microservices
 Centralized Configuration with Spring Cloud Config
o Overview of Spring Cloud Config
o Centralized configuration management
o Integrating Spring Cloud Config with Spring Boot
o Implementing compensating transactions
o Using Sagas for long-running transactions

Module 5: Introduction to Docker


 Understanding Containerization
o Overview of containerization
o Comparing containers to virtual machines
o Benefits of using containers in microservices architecture
 Introduction to Docker
o Docker Introduction
o Key Docker components: Docker Engine, Docker Hub, Docker CLI
o Environment Setup for Docker
o Docker Commands
o Setting up a public Docker registry
o Pushing and pulling images from a registry
o Running and managing Docker containers
 Building Docker Images
o Creating Docker images using Dockerfile
o Creating Docker images using Google Jib
 Containerizing Microservices
o Preparing applications for Dockerization
o Dockerizing all microservices

Module 6: Deploying Microservices with Docker and Kubernetes


 Overview of Kubernetes
o Introduction to Kubernetes
o Key Kubernetes components: Master and Nodes
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

o Kubernetes objects: pods, deployments, services, Replication, ConfigMap


 Installing and Configuring Kubernetes
o Configuring Kubernetes on cloud providers (GCP)
o Using kubectl for interacting with Kubernetes clusters
 Deploying Microservices in Kubernetes
o Deploying microservices as Pods
o Managing microservices with Deployments
 Kubernetes Services
o Understanding Kubernetes Services
o Creating and managing Services
o Load balancing and service discovery in Kubernetes
 Application Lifecycle Management
o Rolling updates and rollbacks in Kubernetes

Module 7: Event Driven Microservices


 Kafka Overview
o Introduction to Apache Kafka and its architecture
o Key use cases for Kafka in real-world applications
 Kafka Topics and Partitions
o Definition and purpose of topics
o Creating and managing topics in Kafka
o Understanding partitions in Kafka
o Distributing data across partitions
o Importance of topic replication
 Kafka Producers
o Overview of Kafka producers
o Producing messages to Kafka topics
 Kafka Consumers
o Overview of Kafka producers
o Listening message from Kafka Topics
 Role of Kafka in microservices communication

Module 8: Testing in Spring Boot


 Unit testing with Junit and Mockito
 Introduction to Mockito framework
 Creating and using mock objects
 @Mock, @InjectMocks annotations
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

 Testing Spring Boot service components with Mockito


 Mocking data access and external dependencies
 Understanding and using argument matchers

Module 9: Spring Boot Security


 Introduction to Spring Security
 Getting Started with Spring Boot Security
o Setting up a basic Spring Boot Security project
o Configuring security dependencies
o Understanding the default security settings
 Securing REST APIs with Spring Security
o Protecting REST API endpoints from unauthorized access
o Understanding OAuth2 integration for social login
 Introduction to JWT (JSON Web Tokens)
o Overview of JWT and its structure
o Configuring Spring Boot Security for JWT
o Generating and validating JWT tokens
o Integrating JWT with Spring Boot Security
 Microservices Security Using Keycloak in API Gateway

Module 10: Introduction to Caching in Spring Boot


 Overview of Caching in Spring Boot
o Importance of caching in application performance
o Introduction to Spring Boot caching support
 Spring Boot Caching Annotations
o @Cacheable, @CachePut, and @CacheEvict annotations
o Configuring caching in Spring Boot applications
 Integrating Redis caching in Spring Boot Application
o Setting up a local Redis instance
o Including Redis dependencies in a Spring Boot project
o Configuring Redis connection properties

Module 11: Microservices Design Patterns (Real World Example Ecommerce)


 Understanding CQRS
o Command and Query Responsibility Segregation explained
o Benefits of adopting CQRS in microservices
 Command Handling in CQRS
www.youtube.com/c/javaexpress
[email protected]
+91 7801007910
Java Express

o Designing and processing commands


o Command validation and error handling
o Asynchronous command processing
 Query Handling in CQRS
 Event Sourcing in CQRS
o Introduction to Event Sourcing
o Axon Server for Event Sourcing
 Implementing Sagas in Microservices
o Introducing the Saga pattern
o Characteristics and principles of Sagas
o Saga Orchestration
o Implementing Sagas with orchestration services
o Coordinating Sagas through a centralized orchestrator
o Managing distributed transactions with orchestration
 Compensation in Sagas
o Understanding compensation actions
o Handling failures and rollbacks in Sagas

Module 12: React JS Integration with Spring Boot


 Introduction to React JS
 React Hooks ( state & props)
 Axios Library ( REST Calls)
 Browser Router
 Enable CORS in Spring Boot Application
 How to call GET API from React JS to Spring Boot Application
 Big Basket Application Explanation (code walk through)
o Javascript
o Bootstrap
o Monogodb
o springboot

You might also like