Overview
During this two day training course, participants receive an in-depth overview of the Spring framework in a hands-on learning environment. The course explores the new, improved Spring 4.x configuration management options, using JavaConfig and Annotations. The course also covers concepts of the Spring IO platform such as the Spring Boot, an overview of Spring data and the Spring cloud.
What You'll Learn
- Review the concepts of Java based configuration
- Familiarize with conditionally loading bean definitions and application contexts
- Understand how to leverage the power of Spring Boot
- Use Spring Boot to create and work with JPS repositories
- Use Spring Boot to work in conjunction with Spring cloud
- Understand the Spring cloud project
- Explore the relation between Spring cloud and general cloud concepts and practices
- Work with Spring cloud configuration and the Config client
Curriculum
- Introduce Java-based configuration
- The @Configuration and @Bean annotations
- Define bean dependencies
- Bootstrapping Java Config context
- Injection in configuration classes
- Using context profiles
- Conditionally loading beans and configurations
- Using properties in Java based configuration
- Exercise: Java based configuration
- Exercise: Using profiles
- Set up a project using Spring Boot
- ‘Setup’ a simple DataSource
- Use the Java Persistence API to persist entity state
- ‘Define’ the dependencies
- The Spring initializer
- Configuration By Exception
- Provide an overview of Spring Boot
- Introduce starter dependencies
- Introduce auto-configuration
- @Enable… annotations
- Conditional configuration
- Spring Boot Externalized Configuration
- Bootstrapping Spring Boot
- Exercise: Create REST Repository using Spring Boot
- Understand Spring Boot Actuators
- Exercise: The Spring Actuator
- Exercise: Securing the Spring Actuator
- Introduce Spring Boot Devtools
- Enable the ConditionEvaluationReport
- Debugging Spring Boot
- Exercise: Discover the Spring DevTools
- Provide a quick overview of Thymeleaf
- Introduce Thymeleaf templates
- Create and run a Spring Thymeleaf MVC application
- Exercise: Add front-end to REST Repository
- Common Property Overrides
- ConditionEvaluationReport
- Additional Configuration Options
- Working with AutoConfiguration with Spring Cloud
- What is Spring Cloud
- Explore the various Spring Cloud Project Tools
- Learn about the Spring Cloud Project
- Exercise: Running the Micro-service
- Centralize Application Configuration
- Introduce the Spring Cloud Config Project
- Defining the Configuration server
- Setup a Git repository to backup the server
- Accessing the configuration server
- Making service cloud config aware
- Refreshing the service to apply updated property values
- Exercise: Setup a Spring Cloud Configuration Server
- Service repositories
- Configuring the NetFlix Eureka server
- Register a service with the repository
- Exercise: Setup a Spring Cloud Repository
- Edge (Gateway) services
- Enable the Zuul reverse Proxy
- Access the back end service through gateway
- Explain the purpose of a Micro-proxy
- Implement and API Gateway
- Add circuit breakers to provide alternative paths in case of service failures
- Exercise: Creating the Flight-Service micro-proxy
Who should attend
The course is highly recommended for –
- Java Spring Boot developers
- Java developers
- Microservices engineers
- Full stack developers
- Back-end developers
- Software developers
- Application developers
- Software engineers
Prerequisites
Participants need to have working knowledge of developing Java applications. Prior experience of working with Spring would be beneficial. Participants must have attended the below courses or have equivalent knowledge of –
- Mastering Java for OO developers
- Core Spring (not mandatory)