REST Web Services & Microservices with SpringMVC, SpringCloud

מק"ט: #6975 | משך קורס: 24 שעות אק'
| מספר מפגשים: 3

Web services and Microservices are massively used today. These integration methodologies fits SPA & IoT and effectively used for SaaS. Today, most business services deployed on any platform (domains, private & public clouds) are available on the internet. Any new backend feature is followed by integration tier implemented as a Web-Service. The course details how to create Microservices with SpringMVC and SpringCloud
As Spring framework became popular among Java server-side developers, it is a preferred solution for creating lightweight service nodes. Such independent nodes can be automated and by that provide complex service management capabilities.
This course relates to REST web services and how to implement it via SpringMVC & SpringBoot. The course also explores Microservices and deep dives into practical construction of a Microservice eco-system with SpringCloud enhanced by Open-Source implementations provided by leading vendors like Netflix.

*שדות חובה
PDF version

קהל יעד

  • Java developers that want to create Web services with SpringMVC
  • Java developers that want to create Microservices with SpringMVC
  • Spring developers that want to use SpringBoot for creating executable web nodes
  • Java developers that want to construct Microservice – Ecosystem based on SpringMVC, SpringBoot & SpringCloud

תנאי קדם

  • Experience in JavaSE
  • Experience in Spring Framework core
  • Familiarity with client side web-technologies & web-services


Intro to web development

  • Intro to HTTP
  • Java web module components
  • Servlets API – intro
  • Basic configuration
  • Understanding HTTPRequest, response & sessions


  • Why REST?
  • Going stateless
  • HTTP for RPC
  • RESTful methodology

Quick Start with SpringBoot

  • Introduction
  • @SpringBootApplication
  • Application default structure & configuration
  • Configuration files and main properties
  • Exporting as a standalone deployable image (war/jar)
  • Main extensions (Web, JPA, NoSQL, RDBMS-Drivers)
  • Starters and enablers
  • Embedded Tomcat/Jetty 

Spring MVC & REST

  • Introduction
  • Configurations
  • Create Spring MVC controllers
  • Injecting CGI (Request, Context)
  • Creating services
  • Handling path & query params
  • Java beans & JSON support
  • Manipulating responses
  • Using sessions


  • Why & what is?
  • Creating Microservices with SpringMVC
  • Benefits and drawbacks
  • Challenges
  • Best practices
  • Patterns
  • Decomposition patterns
  • Storage patterns
  • Discovery & integration patterns
  • Invocation patterns
  • Deployments
  • Cross-cutting concerns patterns
  • Testing patterns
  • Circuit Breaker
  • Access Token
  • Observability patterns
  • UI patterns

Spring Boot

  • Introduction
  • Installation
  • Configuring POM
  • Setting class dependencies
  • Coding & @EnableAutoConfiguration
  • Deploying code
  • Creating executable jar

Spring Cloud

  • Introduction
  • Understanding CloudContext
  • Configuration server - Eureka
  • Service discovery - Eureka
  • API gateway - Zuul
  • Circuit breaker (load-balancing) - Hystrix
  • Monitoring – Hystrix
  • Load-balancing – Spring Ribbon