0% found this document useful (0 votes)
13 views13 pages

Master Spring MicroServices

Uploaded by

vikas4uraj
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)
13 views13 pages

Master Spring MicroServices

Uploaded by

vikas4uraj
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/ 13

Spring Microservices by Srinivas Dande

Prerequisites: Timings: 7.30A.M to 9.30A.M (Mon - Fri)


Java8 Course Duraion: 3 Months (120 Hours)
Spring Framework Course Price: Rs. 20, 000
Hibernate Framework Trainer: Srinivas Dande
Maven
MySQL

Spring Microservices Course has three Sub Course


1) Spring Boot Course

2) MicroServices with Spring Boot and Spring Cloud Course

3) Spring Security and Spring OAuth2 Security Course

1) Spring Boot Course Duration: 40 Hours

2) MicroServices with Spring Boot Duration: 50 Hours


and Spring Cloud Course

3) Spring Security and Spring Duration: 30 Hours


OAuth2 Security Course

Java Learning Center 1 Spring MicroServices


1) Spring Boot Course Duration: 40 Hours

Module 1 : Spring Data Access with Boot - Part 1


Objectives:

In this Module, You will learn Data Access with Spring Boot Applications with JDBC , Data
Sources and Various Spring Boot features.

Topics:

 Spring -JDBC Flow


 Developing Spring -JDBC Lab
 Understanding the Problems with this Lab.
 First Spring Boot Example
 Spring Boot Features.
 Starters
 Auto Configurations
 Exploring Starters
 Exploring Auto Configurations
 Exploring YAML Files
 Using Hikari DataSource
 Using Tomcat DataSource
 Using DBCP2
 Using DBCP
 Using JdbcTemplate
 Using NamedParameterJdbcTemplate
 Using Logging with Boot
 Understanding Spring Boot Start-Up Tasks
 Exploring CommandLineRunner
 Exploring @SpringBootApplication
 Exploring @ComponentScan

Module 2 : Spring Data Access with Boot - Part 2


Objectives:

In this Module, You will learn Data Access with Spring Boot Apps with Hibernate, JPA

Topics:

 Spring Boot with Hibernate


 Spring Boot with JPA
 Spring Boot with Transactions

Java Learning Center 2 Spring MicroServices


Module 3 : Spring Data Access with Boot - Part 3
Objectives:

In this Module, You will learn Data Access with Spring Boot Applications with Spring Data
JPA , Spring Data Mongo

Topics:

 Spring Data JPA


 Spring Data Mongo
 Spring Boot with Data JPA
 Exploring CurdRepository
 CurdRepositoryMethods
 Exploring JpaRepository
 JpaRepository Methods
 Exploring MongoRepository
 MongoRepository Methods
 Writing Methods using DSL
 Using @Query with JPA-QL
 Using @Query with Native Queries

Module 4: Spring MVC with Boot


Objectives:

In this Module, You will learn how to develop Spring Boot Applications with Spring MVC

Topics:

 Spring MVC Flow


 Developing Spring MVC Application with Spring Boot
 Creating WAR and Deploying to External Server
 Creating FAT JAR and Running with Embedded Container.
 Using BootStrap
 Using ThymeLeaf
 Running FAT Jar from Command Line
 Spring MVC -Boot -JPA CRUD Operations

Java Learning Center 3 Spring MicroServices


Module 5 : Spring REST with Boot
Objectives:

In this Module, You will learn Developing, Documenting and Testing REST API and Spring
Boot and Swagger

Topics:

 Introduction to REST Web Services


 Understanding HttpRequest
 Request Headers
 Request Body
 Understanding HttpResponse
 Response Headers
 Response Body
 REST Flow with Diagram
 Controller Vs RestController
 @RequestBody Vs @ResponseBody
 @RequestBody Vs @PathVariable
 Developing REST Lab with Boot
 Understanding URL's
 Writing @GetMapping
 Writing @RequestMapping
 Controller Vs RestController
 @RequestBody Vs @ResponseBody
 @RequestBody Vs @PathVariable
 Developing Spring REST and Data JPA Lab with Boot
 Writing @GetMapping
 Writing @PostMapping
 Writing @PutMapping
 Writing @DeleteMapping
 Using @RequestBody and @PathVariable
 Using RestTemplate
 Using ResponseEntity
 Handling Exceptions
 Handling Exceptions Locally in Controller
 Using ResponseStatusException
 Handling Exceptions Globally in Centralized Place
 Writing Custom Messages
 Using ResponseEntity
 Working with Swagger
 Documenting REST API with Swagger
 Testing REST API with Swagger

Java Learning Center 4 Spring MicroServices


Module 6 : Actuators and Boot Admin
Objectives:

In this Module, You will learn Boot features Actuators , Boot Admin Client and Server

Topics:

 Understanding Importance of Actuators


 Enabling Actuators in Spring Boot Application
 Understanding Actuators Endpoints
 Enabling and Disabling Actuators Endpoints
 Customizing Info Endpoint
 Customizing Logging Endpoint
 Customizing Metrics Endpoint
 Customizing Health Endpoint
 Writing Custom HealthIndicators
 Understanding Importance of Boot Admin Client and Server
 Setting Up Boot Admin Server
 Enabling Boot Admin Client in Application
 Monitoring Operatonal Info at Boot Admin Server Console

Module 7 : Async Communication with RabbitMQ


Objectives:

In this Module, You will learn Async Communication with Rabbit MQ.

Topics:

 Understanding Synchronous Communication


 Understanding Asynchronous Communication
 Importance of Message Broker in Distributed Systems
 HTTP Vs AMQP
 Installing Erlang
 Installing RabbitMQ
 Checking RabbitMQ Management Console
 Developing RabbitMQ Application with Spring Boot.
 Developing Message Senders
 Using RabbitTemplate class
 Developing Message Listeners
 Using @RabbitListener
 Execution Flow of RabbitMQ Example

Java Learning Center 5 Spring MicroServices


Module 8 : Async Communication with Kafka
Objectives:

In this Module, You will learn about Async Communication with Kafka.

Topics:

 Understanding Synchronous Communication


 Understanding Asynchronous Communication
 Installing Kafka and ZooKeeper
 Understanding Kafka and ZooKeeper
 Using Kafka in Spring Boot Application.
 Developing Message Senders
 Using KafkaTemplate class
 Developing Message Listeners
 Using @KafkaListener
 Execution Flow of Kafka Example

Module 9 : Unit Testing Spring Boot Applications


Objectives:

In this Module, You will learn about Unit Testing Spring Boot Applications.

Topics:

 Create a Spring Boot App for Testing


 Writing Unit Tests
 Writing Integration Tests

Java Learning Center 6 Spring MicroServices


2) MicroServices with Spring Boot and Duration: 50 Hours
Spring Cloud Course

Module 1: Introduction to MicroServices


Objectives:

In this Module, You will learn about Monolithic Applications vs MicroServices, BookStore
Case Study

Topics:

 Monolithic Architecture
 Benefits of Monolithic Architecture:
 Challenges with Monolithic Applications:
 What are MicroServices?
 MicroServices benefits
 Challenges with MicroService Architecture
 Number Of Endpoints for a MicroService
 Communication styles
 Synchronous Communication
 ASynchronous Communication
 MicroServices early adopters
 Case Study : JLCBookStore
 Understanding JLCBookStore Use-cases.
 Designing Various MicroServices for JLCBookStore
a. BookPriceMS
b. BookSearchMS
c. PlaceOrderMS
d. UserRatingMS
e. BookStoreWeb
 Communication among MicroServices of JLCBookStore

Module 2 : Developing BookStore MS ehco system


Objectives:

In this Module, You will develop the 5 MicroServices designed from BookStore CaseStudy
with Spring MVC, Spring REST , Spring Data JPA , Swagger

Topics:

 Developing BookPriceMS
 Step By Step Instructions to Develop BookPriceMS

Java Learning Center 7 Spring MicroServices


 Write Code for BookPriceMS
 Using Swagger with BookPriceMS
 Testing with Swagger
 Developing BookSearchMS
 Step By Step Instructions to Develop BookSearchMS
 Write Code for BookSearchMS
 Using Swagger with BookSearchMS
 Testing with Swagger
 Developing PlaceOrderMS
 Step By Step Instructions to Develop PlaceOrderMS
 Write Code for PlaceOrderMS
 Using Swagger with PlaceOrderMS
 Testing with Swagger
 Developing UserRatingMS
 Step By Step Instructions to Develop UserRatingMS
 Write Code for UserRatingMS
 Using Swagger with UserRatingMS
 Testing with Swagger
 Developing BookStoreWeb
 Step By Step Instructions to Develop BookStoreWeb
 Write Code for BookStoreWeb

Module 3 : RabbitMQ , Feign with BookStore


Objectives:

In this Module, You will update the 5 MicroServices developed with RabbitMQ, Feign.

Topics:

 Understanding Async Use Cases in BookStore


 Step By Step Instructions to Use RabbitMQ
 Using Rabbit MQ with BookSearchMS
 Using Rabbit MQ with PlaceOrderMS
 Using Rabbit MQ with UserRatingMS
 Using Rabbit MQ with BookStoreWeb
 Understanding REST Use Cases in BookStore
 Understanding Feign
 Understanding Eureka
 Replacing RestTemplate Calls with Feign
 Step By Step Instructions to Use Feign
 Using Feign with BookSearchMS
 Using Feign with BookStoreWeb

Java Learning Center 8 Spring MicroServices


Module 4 : Actuators , Boot Admin and Eureka with BookStore
Objectives:

In this Module, You will update the 5 MicroServices developed with Actuators , Boot
Admin and Eureka

Topics:

 BookStore with Actuators


 Step By Step Instructions to Use Actuators
 Using Actuators with BookPriceMS
 Using Actuators with BookSearchMS
 Using Actuators with PlaceOrderMS
 Using Actuators with UserRatingMS
 Using Actuators with BookStoreWeb
 BookStore with Boot Admin
 Step By Step Instructions to Setup Boot Admin Server
 Using Boot Admin Client with BookPriceMS
 Using Boot Admin Client with BookSearchMS
 Using Boot Admin Client with PlaceOrderMS
 Using Boot Admin Client with UserRatingMS
 Using Boot Admin Client with BookStoreWeb
 BookStore with Eureka
 Step By Step Instructions to Setup Eureka Server
 Using Eureka Client with BookPriceMS
 Using Eureka Client with BookSearchMS
 Using Eureka Client with PlaceOrderMS
 Using Eureka Client with UserRatingMS
 Using Eureka Client with BookStoreWeb

Module 5 : ,Ribbon and Spring Cloud Load Balancer with BookStore


Objectives:

In this Module, You will update the 5 MicroServices developed with Ribbon or Spring
Cloud Load Balancer

Topics:

 Exploring Feign, Eureka ,Ribbon and Spring Cloud Load Balancer


 Ways to Invoke one MS from other MS
 Using RestTemplate
 Using Feign
 Using Discovery Client

Java Learning Center 9 Spring MicroServices


 Using Ribbon backed RestTemplate
 Using LoadBalancerClient

Module 6 : Hystrix, ELK Stack & Zuul with BookStore


Objectives:

In this Module, You will learn Hystrix, ELK Stack & Zuul nad update the 5 MicroServices
developed with them

Topics:

 Exploring Hystrix
 Using Hystrix with BookStore MicroServices
 Exploring ELK Stack
 Using ELK Stack with BookStore MicroServices
 Exploring Zuul
 Using Zuul with BookStore MicroServices

Module 7: Cloud Config Client & Server and Cloud Bus with BookStore
Objectives:

In this Module, You will learn Cloud Config Client & Server and Cloud Bus and update the
BookStore MicroServices echo system with them.

Topics:

 How to Configure Application Configuration Data


 Centralizing Application Configuration Data
 Introduction to Spring Cloud Config Server
 Using GIT with Spring Cloud Config Server
 Setup the Initial Project
 Setup GIT Repository
 Create the Property Files in GIT Repository
 Setup Config Server
 Setup Config Client with BookSearchMS
 Setup Config Client with BookStoreWeb
 Scaling the BookSearchMS to 3 Instances
 Change the Configuration Properties
 Using refresh end-point of actuator
 Understanding Cloud Bus
 Setup Cloud Bus
 Cloud Bus - Flow with Diagram
 Understanding Multiple Project Environments

Java Learning Center 10 Spring MicroServices


 Development Environment
 QA Environment
 Staging Environment
 Production Environment
 Creating Different Property files for Different Environments
 Creating Different Profiles for Different Environments
 Enabling Required Profile
 spring.profiles.active=dev

Module 8 : Kafka with BookStore


Objectives:

In this Module, You will update the 5 MicroServices developed with Kafka by replaing
Rabbit MQ

Topics:

 Understanding Async Use Cases in BookStore


 Step By Step Instructions to Use Kafka
 Using Kafka with BookSearchMS
 Using Kafka with PlaceOrderMS
 Using Kafka with UserRatingMS
 Using Kafka with BookStoreWeb

Java Learning Center 11 Spring MicroServices


3) Spring Security and Spring OAuth2 Duration: 30 Hours
Security Course

Module 1 : Spring Security with Boot


Objectives:

In this Module, You will learn applying Authetication and Authorization for Sprig Boot
Applications with Spring Secuirty Framework.

Topics:

 Configuring Default Spring Security


 Exploing Security Filters and Filter Chains
 Security Processing Flow
 Configuring Authentication Managers
 In-memory Authentication Manager
 JDBC Authentication Manager
 LDAP Authentication Manager
 Configuring HttpSecurity for Authorization
 Denying all the requests
 Permit all the requests
 Permit for specific requests
 Customizing Login page
 Customizing Logout page
 User Registration
 Password Encoders
 Displaying Links as Per the Roles
 Exploring CORS and CSRF
 Exploring JWT

Module 2: Spring OAuth2 Security


Objectives:

In this Module, You will learn about Spring OAuth2 Security with All Grant Types and
Writing OAuth2 Clients.

Topics:

 Understanding OAuth2 Framework


 Understanding how OAuth2 allows applications to obtain limited access to resources
 Main components of the OAuth 2.0 specification

Java Learning Center 12 Spring MicroServices


 Understanding Resource Owner
 Understanding Client Application
 Understanding Authorization Server
 Understanding Resource Server
 Exploring OAuth2 endpoints
 OAuth2 Grant Types
 Exploring Authorization Code Grant Type
 Exploring Implicit Grant Type
 Exploring Resource owner password credentials Grant Type
 Exploring Client credentials Grant Type
 Refresh Token Grant Type
 Choosing Required Grant Type
 OAuth2 Client Applications
 OAuth2 Client for Authorization Code Grant Type
 OAuth2 Client for RO Password Grant Type
 OAuth2 Client for Implicit Grant Type
 OAuth2 Client for Client Credentials Grant Type
 Token based Authetication with JWT
 OAuth2 Complete Example

Module 3: MicroServices Security with OAuth2


Objectives:

In this Module, You will learn Applying Secuirty and OAuth2 Secuirty to BookStore
MicroService Eco System.

Topics:

 Applying Spring Secuirty and OAuth2 Secuirty for following microservices of BookStore
Echo System.
a. BookStoreWeb
b. BookSearchMS
c. BookPriceMS
d. PlaceOrderMS
e. UserRatingMS

Java Learning Center 13 Spring MicroServices

You might also like