פיתוח תוכנה

REST Web Services & Microservices with SpringMVC, SpringCloud

מספר הקורס 6975

למה ללמוד בג'ון ברייס?
  • למידה חדשנית ודינמית עם כלים מתקדמים בשילוב סימולציות, תרגול וסביבות מעבדה
  • מגוון הכשרות טכנולוגיות עם תכנים המותאמים להתפתחות הטכנולוגית ולביקוש בתעשיית ההייטק
  • מובילים את תחום ההכשרות לעולם ההייטק והטכנולוגיה כבר 30 שנה, עם קהילה של עשרות אלפי בוגרים
  • אתם בוחרים איך ללמוד: פרונטאלית בכיתה, מרחוק ב- Live Class או בלמידה עצמית

המועדים הקרובים

קורס לקבוצות

הקורס נפתח במתכונת של קבוצה בלבד, בהתאמה אישית לארגונים.
לפרטים נוספים: Muzman@johnbryce.co.il

משך הקורס

שעות לימוד:

24

מספר מפגשים:

קורס בוקר:

3

מתכונת הקורס

הקורסים המוזמנים לארגונים מותאמים באופן אישי ומלא לצרכי הארגון, מערכי הלימוד גמישים וניתן לשלב בהם תכנים רלוונטיים וייעודיים.

Overview

 

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.

מטרות הקורס

Who Should Attend

Java developers that want to create Web services 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

תכנית הלימודים

Full syllabus

Intro to web development

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

REST

  • 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)
  • Spring.start.io
  • 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

Microservices

  • 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

Prerequisites
  • Experience in JavaSE
  • Experience in Spring Framework core
  • Familiarity with client side web-technologies & web-services
קורסים מקצועיים למתקדמים