SP-BOOT
Spring Boot: Developer Training
This 2-day course offers experience with Spring Boot and its major features, including auto-configuration, Actuator, Spring Boot testing framework and more. On completion, participants will have a foundation for creating enterprise and cloud-ready applications.
Course Details
Duration
2 days
Prerequisites
- A good working knowledge on web application development using Java and an IDE (Eclipse, STS or IntelliJ).
- Basic understanding of Spring: Java Config, component- scanning, Spring driven testing and Spring data-management (JdbcTemplate, @Transactional).
- Experience using Java and build tools such as Maven or Gradle.
Target Audience
Application developers who want to increase their understanding of Spring and Spring Boot and a focus on fundamentals.
Skills Gained
- Understand the benefits provided by Spring Boot
- Initialize a project using Spring Boot Starters
- Leverage Spring Boot's auto configuration features
- Create simplified backing-store solutions using Spring Data JPA
- Build a simple MVC application using Spring Boot, embedded Web Server and fat JARs or classic WARs
- Build a RESTful Web application
- Use Spring Security to secure Web and REST endpoints
- Enable and extend metrics and monitoring capabilities using Spring Boot actuator
- Leverage advance configuration capabilities
- Utilize Spring Boot enhancements to testing
Course Outline
- Introduction to Spring Essentials
- Why Spring
- Configuration using Spring
- Bean creation
- Data Management
- Spring Boot Introduction
- Introduction to Spring Boot Features
- Value Proposition of Spring Boot
- Creating a simple Boot application using Spring Initializr website
- Spring Boot Dependencies, Auto-configuration, and Runtime
- Dependency management using Spring Boot starters
- How auto-configuration works
- Configuration properties
- Overriding auto-configuration
- Using CommandLineRunner
- JPA with Spring and Spring Data
- Quick introduction to ORM with JPA
- Benefits of using Spring with JPA
- JPA configuration in Spring
- Configuring Spring JPA using Spring Boot
- Spring Data JPA dynamic repositories
- Spring MVC Architecture and Overview
- Introduction to Spring MVC and request processing
- Controller method signatures
- Using @Controller, @RestController and @GetMapping annotations
- Configuring Spring MVC with Spring Boot
- Spring Boot packaging options, JAR or WAR
- Rest with Spring MVC
- An introduction to the REST architectural style
- Controlling HTTP response codes with @ResponseStatus
- Implementing REST with Spring MVC, @RequestMapping, @RequestBody and @ResponseBody
- Spring MVC's HttpMessageConverters and automatic content negotiationageConverters and automatic content negotiation
- Spring Security
- What problems does Spring Security solve?
- Configuring authentication
- Implementing authorization by intercepting URLs
- Authorization at the Java method level
- Understanding the Spring Security filter chain
- Spring security testing
- Actuators, Metrics and Health Indicators
- Exposing Spring Boot ActuÄator endpoints
- Custom Metrics
- Health Indicators
- Creating custom Health Indicators
- External monitoring systems
- Spring Boot Testing Enhancements
- Spring Boot testing overview
- Integration testing using @SpringBootTest
- Web slice testing with MockMvc framework
- Slices to test different layers of the application