Training

 

 

Popular Courses

Browse Our Free Resources

  • whitepapers
  • whitepapers
  • webinars
  • blogs

Our Locations

Training Centres

Vancouver, BC
Calgary, AB
Edmonton, AB
Toronto, ON
Ottawa, ON
Montreal, QC
Hunt Valley
Columbia

locations map

Calgary

550 6th Av SW
Suite 475
Calgary, AB
T2P 0S2

Toronto

821A Bloor Street West
Toronto, ON
M6G 1M1

Vancouver

409 Granville St
Suite 902
Vancouver, BC
V6C 1T2

U.S. Office

436 York Road
Suite 1
Jenkintown, PA
19046

Other Locations

Dallas, TX
Miami, FL

Home > Training > Spring Framework/Spring Boot > Comprehensive Spring Boot/Cloud Training

Comprehensive Spring Boot/Cloud Training

Quick Enroll

Course#: WA2607
Courseware: Available for sale

Rapid advancements in cloud-based software delivery and virtualization have caused many developers to question the wisdom of a “Big Server” approach to deploying web applications. Spring Boot is a technology stack that builds on the popular Spring Framework to allow Spring-based applications as stand-alone jar files that host their own web servers. This approach works nicely with deployment automation and rapid scaling.

Cloud-based, highly-distributed applications face additional challenges in supporting a dynamic environment – especially around configuration, service discovery, service resilience and monitoring.  Spring Cloud embraces and extends the popular suite of open source cloud tools published by Netflix (Eureka, Hystrix, Ribbon, etc).

This course introduces Spring Boot, Spring Cloud and the Netflix OSS suite as a way of deploying highly resilient and scalable RESTful services and web applications.

OBJECTIVES

In this training, attendees will learn how to:

  • Create Spring Boot projects
  • Use databases and JPA in Spring Boot
  • Create RESTful services with Spring Boot
  • Deploy services that use Netflix Eureka, Hystrix and Ribbon to create resilient and scalable services

PREREQUISITES

Students should have experience with Java development

Duration

4 Days

Outline of WA2607 Comprehensive Spring Boot/Cloud Training

Chapter 1. Spring Framework Configuration

  • Java @Configuration Classes
  • Defining @Configuration Classes
  • Loading @Configuration Classes
  • Modularizing @Configuration Classes
  • Qualifying @Bean Methods
  • Trouble with Prototype Scope
  • Configuration with Spring Expression Language
  • Resolving Text Messages
  • Spring Property Conversion
  • Spring Converter Interface
  • Using Custom Converters
  • Spring PropertyEditors
  • Registering Custom PropertyEditors
  • Summary

Chapter 2. Introduction to Spring Boot

  • What is Spring Boot?
  • Spring Boot Main Features
  • Spring Boot on the PaaS
  • Understanding Java Annotations
  • Spring MVC Annotations
  • Example of Spring MVC-based RESTful Web Service
  • Spring Booting Your RESTful Web Service
  • Spring Boot Skeletal Application Example
  • Converting a Spring Boot Application to a WAR File
  • Externalized Configuration
  • Starters
  • The 'pom.xml' File
  • Spring Boot Maven Plugin
  • HOWTO: Create a Spring Boot Application
  • Summary

Chapter 3. Spring MVC

  • Spring MVC
  • Spring Web Modules
  • Spring MVC Components
  • DispatcherServlet
  • Template Engines
  • Spring Boot MVC Example
  • Spring MVC Mapping of Requests
  • Advanced @RequestMapping
  • Composed Request Mappings
  • Spring MVC Annotation Controllers
  • Controller Handler Method Parameters
  • Controller Handler Method Return Types
  • View Resolution
  • Spring Boot Considerations
  • Summary

Chapter 4. Overview of Spring Boot Database Integration

  • DAO Support in Spring
  • Spring Data Access Modules
  • Spring JDBC Module
  • Spring ORM Module
  • DataAccessException
  • @Repository Annotation
  • Using DataSources
  • DAO Templates
  • DAO Templates and Callbacks
  • ORM Tool Support in Spring
  • Summary

Chapter 5. Using Spring with JPA or Hibernate

  • Spring JPA
  • Benefits of Using Spring with ORM
  • Spring @Repository
  • Using JPA with Spring
  • Configure Spring Boot JPA EntityManagerFactory
  • Application JPA Code
  • "Classic" Spring ORM Usage
  • Spring JpaTemplate
  • Spring JpaCallback
  • JpaTemplate Convenience Features
  • Spring Boot Considerations
  • Spring Data JPA Repositories
  • Summary

Chapter 6. Spring REST Services

  • Many Flavors of Services
  • Understanding REST
  • RESTful Services
  • REST Resource Examples
  • REST vs SOAP
  • REST Services With Spring MVC
  • Spring MVC @RequestMapping with REST
  • Working With the Request Body and Response Body
  • @RestController Annotation
  • Implementing JAX-RS Services and Spring
  • JAX-RS Annotations
  • Java Clients Using RestTemplate
  • RestTemplate Methods
  • Summary

Chapter 7. Spring Security

  • Securing Web Applications with Spring Security 3.0
  • Spring Security 3.0
  • Authentication and Authorization
  • Programmatic v Declarative Security
  • Getting Spring Security from Maven
  • Spring Security Configuration
  • Spring Security Configuration Example
  • Authentication Manager
  • Using Database User Authentication
  • LDAP Authentication
  • Summary

Chapter 8. Spring JMS

  • Spring JMS
  • JmsTemplate
  • Connection and Destination
  • JmsTemplate Configuration
  • Transaction Management
  • Example Transaction Configuration
  • Producer Example
  • Consumer Example
  • Converting Messages
  • Message Listener Containers
  • Message-Driven POJO's Async Receiver Example
  • Message-Driven POJO's Async Receiver Configuration
  • Spring Boot Considerations
  • Summary

CHAPTER 9. INTRODUCTION TO MICROSERVICES

  • What is a "Microservice"?
  • SOA - Microservices Relationship
  • ESB - Microservices Relationship
  • One Helpful Analogy
  • The Driving Forces Behind Microservices
  • How Can Microservices Help You?
  • The Microservices Architecture
  • Utility Microservices at AWS
  • Microservices Inter-connectivity
  • The Data Exchange Interoperability Consideration
  • Managing Microservices
  • Implementing Microservices
  • Embedding Databases in Java
  • Microservice-Oriented Application Frameworks and Platforms
  • Summary

CHAPTER 10. SPRING CLOUD CONFIG

  • Externalized Configuration
  • Configuration in the Cloud
  • Using the Spring Cloud Config subsystem

 

CHAPTER 11. SERVICE DISCOVERY WITH NETFLIX EUREKA

  • Flexible and reconfigurable services
  • Service Discovery
  • Health Monitoring
  • Rerouting Services
  • Eureka Server
  • Eureka Client

CHAPTER 12. LOAD BALANCING WITH NETFLIX RIBBON

  • Introduction to Load Balancing
  • Client-side vs Server-side load balancing
  • Client-side proxies
  • The Feign client framework
  • Netflix Ribbon
  • Integrating Ribbon and Eureka

CHAPTER 13. CIRCUIT BREAKERS WITH NETFLIX HYSTRIX

  • The Eight Fallacies of Distributed Computing
  • Partial and Transient Failure
  • The Circuit Breaker Pattern
  • Integration with Health Monitoring
  • Monitoring Hystrix

CHAPTER 14. EDGE COMPONENTS WITH NETFLIX ZUUL

  • Architecture for horizontal scaling
  • “In the Cloud” vs “At the Edge of the Cloud”
  • “Server-side” load balancing
  • Netflix Zuul
  • Configuring and Deploying Zuul

CHAPTER 15. DISTRIBUTED TRACING WITH OPEN ZIPKIN

  • Introduction to Tracing
  • Instrumentation
  • Integration with Spring Boot
  • Viewing Trace Data

Lab Exercises

Lab 1. A Simple RESTful API in Spring Boot
Lab 2. Use the Spring Web MVC Web Framework under Spring Boot
Lab 3. Use the Spring JDBCTemplate under Spring Boot
Lab 4. Use the Spring Data JPA under Spring Boot
Lab 5. Create a RESTful API with Spring Boot
Lab 6. Create a RESTful Client with Spring Boot
Lab 7. Enable Basic Security
Lab 8. Use AMQP Messaging with Spring Boot
Lab 9. Use Netflix Eureka for Service Discovery
Lab 10. Use Netflix Ribbon for Client-Side Load Balancing
Lab 11. Use Netflix Hystrix for the Circuit Breaker Pattern
Lab 12. Spring Boot Project

Address Start Date End Date
Instructor Led Virtual 08/28/2017 08/31/2017
Instructor Led Virtual 09/05/2017 09/08/2017
Instructor Led Virtual 10/02/2017 10/05/2017
We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.
*Your name:

*Your e-mail:

*Phone:

*Company name:

Additional notes:

We have received your message. A sales representative will contact you soon.

Thank you!.

more details
buy this course

08/28/2017 - Online Virtual
$2,495.00
Enroll

09/05/2017 - Online Virtual
$2,495.00
Enroll

10/02/2017 - Online Virtual
$2,495.00
Enroll Confirmed!

Other Details

Register for a courseware sample

It's simple, and free.

 

Thank You!

You will receive an email shortly containing a link to download the requested sample of the labs for this course.