This course empowers developers with the skills to build enterprise applications using Spring Boot. With a hands-on approach, you’ll familiarize yourself with the key aspects of Spring Boot such as configurations, data access, web and REST applications, Spring Security and AOP.
Who should attend this course?
Java backend developers wishing to rapidly unlock knowledge of Spring Boot.
Prerequisites
Participants should be comfortable with Java 8+
Duration |
3 days |
Location |
At your convenience (Europe) |
Language |
English or French |
Course details
Each of these sections includes practical exercises. The developers will be invited to progressively build a small microservice that includes every aspect discussed during the training.
Spring Boot: Understanding the framework
- Inversion of control concept
- Beans, BeanFactory and ApplicationContext
- Configurations and Spring Annotations
- Added value of Spring Boot
- Process of creating a Spring Boot Creation application with Initializr
- Spring Boot starters
Spring Web: Developing REST APIs
- REST controllers and request mappings
- Path variable and other injectable objects
- The DispatcherServlet, behind scene
- DTO validation
- Exception handling
Spring Data: Access to relational databases*
- Introduction to ORMs
- JPA and Hibernate
- Repositories and CRUD operations
- Query methods, JPQL and Specifications
- Understanding the EntityManager and the persistent concept
- Transaction management
- Lazy Loading
- Monitoring and Optimizing queries
* Following your needs, this can be replaced by NoSQL databases
Spring Security: Securing your applications
- Presentation of Spring Security
- The concept of filters
- Securing your SecurityFilterChain
- The concept of anonymous authentication
- Securing by URL path
- Secure the invocation of service methods
- Spring Expression language
- Handling access denied exceptions
Spring Test: Unit and integration tests
- Mocking dependencies with Mockito.
- Spring Boot integration tests
- Test your endpoints using MockMvc
Spring AOP
- Aspect Oriented Programming: Concepts and Vocabulary
- AOP functionalities
- Understanding proxies
Spring configurations and configuration profiles
- Creating application properties
- Concept of profiles and when to use them
- Auto configured dependencies
Spring Reactive: introduction
- When to use Spring Reactive
- Blocking vs asynchronous calls