Objectives of the training
Build a complete backend application with Spring framework and Spring boot.Targeted audience
Developers and architects.Prerequisite
This course requires a sound knowledge of the basics of Java programming (principles of object-oriented programming, generic types, annotations, lambda expressions) and experience of working with Eclipse or IntelliJ.Trainers
Benefits for Participants
- Implement weak coupling by applying dependency injection;
- Apply interceptors and use aspect-oriented programming (AOP);
- Master automatic Spring Boot configuration;
- Access relational database data;
- Apply transactions to guarantee system consistency;
- Create REST API endpoints with Spring MVC;
- Implement an MVC frontend with Spring MVC.
Course architecture
Introduction
Reminder of good design practices.
Patterns at the heart of the Spring framework: singleton, prototype, strategy, proxy, factory.
Essential Spring framework components: core, data access, webmvc.
Relationship between Spring framework and Spring boot.
The development environment.
Deployment strategies: JAR, OCI image, native application.
Managing beans with Spring Core
The ApplicationContext.
Declaring a Spring bean.
Profiles and the @Conditional annotation.
Dependency injection.
Accessing properties.
Callbacks.
Testing a Spring bean, coupling with Junit.
Task scheduling.
Bean supervision with JMX.
Interceptors: cache, transaction, AOP.
Automatic configuration.
Data access and transaction management
Reminders, best practices (non-blocking I/O, ACID principles, connection pool, CAP theorem).
Spring's contribution: implementation of the unit-of-work pattern.
Access to relational databases with JdbcClient.
Coupling with Jakarta persistence API (JPA).
Transactional demarcation with PlatformTransactionManager.
Introduction to Spring Data.
Practical application: accessing relational database data with Spring, applying transactions.
REST API with Spring MVC
Using the embedded web server.
Enabling non-blocking I/O with virtual threads.
Best practices for designing a REST API.
Writing a controller.
Validation.
Exception handling.
Testing a REST API with MockMVC.
Putting it into practice: developing an API exposing the business layer developed previously, consuming REST web services via an HTML/JavaScript frontend.
Server-side GUI with Spring MVC
Views, the role of the template engine.
The model.
Exception handling.
Validation.
Message internationalization.
Practical application: create an MVC frontend to expose the business layer developed above.
If you have any questions about registration, cancellation, schedules, language of instruction, etc., you will find answers in our FAQ.
Pedagogical details
Training architecture
Explanation, for each concept, of the problem it claims to solve, Putting a concept into practice immediately after it has been presented, Validation of each step by execution of unit tests, Exercise “fil rouge” to obtain a complete application at the end of the course, End-of-chapter MCQs to ensure knowledge acquisition.
Type of training
Private or personalized training
If you have more than 8 people to sign up for a particular course, it can be delivered as a private session right at your offices. Contact us for more details.
Request a quotePrivate or personalized training
If you have more than 8 people to sign up for a particular course, it can be delivered as a private session right at your offices. Contact us for more details.
Request a quote