CREATE, SECURE AND PUBLISH APIs WITH IBM API CONNECT V2018
- Description
- Reviews

COURSE DESCRIPTION
Java APIs are integrated pieces of software that come with JDKs. APIs in Java provides the interface between two different applications and establish communication. Java: 2 days training and 1 day assignment Spring Boot based microservices development: 6 days training and 1 day assignment
PREREQUISITE
Students should be comfortable with Core Java
COURSE OUTLINE
DAY 1
- Java Programming Language Improvements / Functional Programming
- Lambda Expressions
- Stream API Introduction
- Method References
- Default Methods
- Repeating Annotations
- Type Annotations
- Improved Type Inference
- Method Parameter Reflections
DAY 2
- Collections
- ‘Java.util.stream’ ( Stream API )
- Sequential and parallel processing
- HashMap enhancements
- Java Compact Profiles
- Internationalization
- Iand NIO
- Date-Time Package
- Scripting
DAY 3
- Do a project on building a java project with Java 8 features.
DAY 4
- Dependency Injection and Inversion of Control
- Microservices introduction
- Monolith Adv. And Dis adv.
- Characteristics of Microservices
- Introduction to SOAP web services
- Introduction to RESTful web services
- SOAP vs. REST
- Spring Boot
- What is Spring Boot
- Why do you need Spring Boot
- Spring Vs Spring Boot
- Lab: Dev. Env. Setup
- Maven for SpringBoot
- Lab: My first Spring Boot project
- Lab: My first RestController
- Lab: My first Service
- Spring Boot Architecture
- In-depth look at what is happening
- HTTP basics
- Introduction to HTTP Protocol
- GET
- POST
- PUT
- HTTP request
- How to use HTTP request types in Microservices design
- HTTP response
- How to use HTTP response types in Microservices design
- Impact of http on Microservices
- HTTP basics
- Introduction to HTTP Protocol
- GET
- POST
- Postman basics
- Install Postman
- HTTP request using Postman
- Lab: HTTP GET request
- Lab: HTTP PUT request
- Lab: HTTP POST request
- Inspect HTTP response
DAY 5
- Microservices
- Lab: Implement Companies-Employee–Rating microservices
- What is a Monolith application?
- Challenges of Monolith applications
- How microservices solves it
- Microservices Architecture
- Migrating from monolith to microservices
- Designing a microservice from scratch
- Decomposition patterns
- Decompose by business capability
- Decompose by subdomain
- 12 Factor applications
- Richardson Maturity Model
- Lab: Implement Seed data
- Lab: Implementing customized function in DAO.
- Lab: Introduction to JPA
- How Dependency injection makes the process very simple.
- Spring Boot Actuator
- Database per service pattern
- Returning a custom object instead of List from Microservices
- The API Gateway pattern defines how clients access the services in a microservice architecture.
Day 6
- The Client-side Discovery and Server-side Discovery patterns.
- Client side service discovery
- Eureka service
- Implementing the service discovery with Eureka
- Client side load balancing
- Server side service discovery
- Eureka service
- Client side service discovery
-
Testing patterns: Service Component Test and Service Integration Contract Test
-
Introduction to Junit
-
Test lifecycle
-
Lab: Write test cases for the microservices that we wrote
-
Lab: Assertions
-
Lab: Tagging and filtering tests
-
Lab: Conditional test execution
-
Lab: Nested tests
-
Lab: Repeated tests
-
Industry best practices
-
DAY 7
- API Gateway Pattern
- Introduction of API Gateway Pattern
- Problem it solves
- Advantages of API Gateway Pattern
- Lab: Implementation of API Gateway Pattern using Spring Cloud API Gateway
- How to leverage API Gateway to implement best practices
- Security
- Discuss security challenges in Microservices
- Authentication and Authorization
- HTTP basic authentication headers
- HTTP Digest authentication headers
- HTTP X.509 client certificate exchange
- Spring Login-Logout
- HTTP: A stateless protocol
- Session maintenance challenges
- Lab: Maintain session state on client using JWT
- Security best practices in Microservices
DAY 8
- Fault Tolerance
- How to make microservices fault tolerant to failure
- How to make your application fault tolerant
- Difference between Fault tolerance and resilience
- Fault tolerance related challenges with Microservices
- Lab: Implementing Timeout
- Lab: Implementing mimicked cached response
- Circuit breaker pattern
- Lab: Implement Circuit breaker pattern using Hystrix
- Externalizing the properties of Spring boot
- Configuring your application
- How to make microservices fault tolerant to failure
- Application.properties
- Project Lombok
- Overview of Project Lombok
- Project Lombok Configuration
- Project Lombok Examples
DAY 9
- Spring MVC Rest Services
- Spring model-view-controller (MVC) overview
- DispatcherServlet
- Controller programming model overview
- Spring MVC views
- Lab: Implement a client for the customer-employee-rating microservices
- HSBG – Adding standard UPCs
- Conclusion
- Understanding the big picture
- Understanding how the following we learned fit together to form a highly scalable microservices design
- API Gateway
- Service Discover
- Fault tolerance
- Externalized configuration
- Database per service pattern
- Spring security
- Spring MVC
- Understanding how the following we learned fit together to form a highly scalable microservices design
DAY 10
- Assignment
- Given a use case
- Identify the microservices in it.
- Design and develop
- Microservices using spring boot
- Create spring boot A calling spring boot B and C. Consolidate the data and return the result to calling application.
- Implement
- service discovery
- fault tolerance
- API gateway
- externalize configuration
- Given a use case
Please contact us for schedules and for booking a private class.
Popular Courses
Archive
Working hours
Monday | 9:00 am - 6.00 pm |
Tuesday | 9:00 am - 6.00 pm |
Wednesday | 9:00 am - 6.00 pm |
Thursday | 9:00 am - 6.00 pm |
Friday | 9:00 am - 6.00 pm |
Saturday | Closed |
Sunday | Closed |