Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
20 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
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 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
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

www.youtube.

com/c/javaexpress
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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
javaexpresschannel@gmail.com
+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