course
Build enterprise applications with Spring Boot
Learn the ins and outs of Spring Boot in this hands-on training
Description
In this training you start with the Spring Framework, a framework for building enterprise applications. In about 1 day you will get to know the relevant concepts of the Spring Framework, which you will then take to Spring Boot, which is built on top of the Spring Framework.
Through the structure of this training, you will learn to understand the Dependency Injection mechanism and the magic behind Spring Boot's AutoConfiguration. Many of the most important Spring Boot modules are discussed and after this training you will have a good idea of ??what Spring Boot has to offer.
In this training you will also work with assignments that you develop with Spring Boot. These assignments have a Test Driven Development (TDD) approach. In this way you not only gain hands-on experience with Spring Boot, but also with the test functionality available in Spring Boot.
Learning Goals
This training covers the following learning goals:
Enumerate the most important modules in the Spring Framework. | |
Enumerate the versions of Spring with their year of release. | |
Indicate the Java version compatibility with Spring. | |
Compare Spring Framework with other comparable frameworks like JEE. | |
Explain the advantages of dependency injection in general. | |
Explain the different ways of configuring dependency injection in Spring. | |
Explain the different forms of dependency injection in Spring. | |
Figure out error messages resulting from dependency injection in Spring. | |
Solve errors occurring with dependency injection in Spring. | |
Explain the different bean scopes in dependency injection in Spring. | |
Explain the use of qualifiers. | |
Produce code that uses dependency injection in Spring. | |
Create unit tests that uses mocks as injected beans. | |
Explain the benefits of using Spring Boot. | |
Construct a Spring Boot application. | |
Explain how autoconfiguration in Spring Boot works. | |
Construct a custom Spring Boot starter. | |
Explain how to use a database in a Spring Boot application. | |
Produce a Spring Boot application that uses a JDBC template to access database. | |
Explain the difference between using an in-memory database like H2 compared to a RDBMS like MySQL. | |
Compare the use of a properties file with a yaml file to configure Spring Boot. | |
Use the most important features of the JDBC template to improve your code. | |
Explain when to use transactions in an application. | |
Apply the transaction API in a Spring Boot application. | |
Explain the different ways of transaction propagation. | |
Explain how Spring injects code to support generic (a.k.a. magic) behaviour like transaction management. | |
Explain when and how Spring rolls back transactions when exceptions occur. | |
Apply the Spring Data JPA API in a Spring Boot application. | |
Apply no code repositories in a Spring Boot application. | |
Create integration tests for a Spring Boot database application. | |
Select the most suitable way of querying the database in a Spring Boot application. | |
Recommend when to use JDBC or JPA within a Spring Boot application. | |
Apply the Bean validation API in a Spring Boot application. | |
Apply the MVC pattern to create a full stack Spring Boot application. | |
Explain the REST architectural style of creating an application. | |
Explain what it means being RESTful. | |
Explain what each RESTful property means for your application. | |
Construct a RESTful Spring Boot application that implements each RESTful property. | |
Construct a Spring Boot application to consume a RESTful application. | |
Explain how to document the API of a Spring Boot RESTful application. | |
Construct a Spring Boot RESTful application with automatically generated API documentation. | |
Explain when to use AOP in an application. | |
Apply the Spring AOP API in a Spring Boot application. | |
Explain when to use reactive programming in an application. | |
Compare reactive programming to servlet based programming. | |
Distinguish functional style programming from other styles. | |
Apply the WebFlux API in a Spring Boot application. | |
Explain the additional features of WebFlux. | |
Explain why it is important to externalize configuration. | |
Apply different ways of external configuration in a Spring Boot application. | |
Apply different configuration profiles in a Spring Boot application. | |
Explain when and how to use caching in a Spring Boot application. | |
Apply caching in a Spring Boot application. | |
Explain when to use asynchronous programming in a Spring Boot application. | |
Construct a Spring Boot application that schedules and executes a task. | |
Explain why to use a messaging system within a distributed application. | |
Explain the benefits of using a messaging system within an application. | |
Construct a Spring Boot application that uses JMS. | |
Apply security in a Spring Boot application. | |
Evaluate when to use and apply the different Spring modules. |
Prior Knowledge
Fair knowledge of Java
Subjects
- Spring introduction
- Dependency injection
- Spring Boot
- Auto configuration
- Database configuration
- Data access
- Transactions
- Spring Data JPA
- Bean Validation
- MVC
- REST
- AOP
- WebFlux
- External values
- Caching
- Asynchronous
- Scheduling
- JMS
- Security
- Conclusion
Schedule
Start date | Duration | Location | |
---|---|---|---|
January 27, 2025January 28, 2025January 29, 2025January 30, 2025 | 4 days | Mechelen / Remote This is a hybrid training and can be followed remotely. More information Mechelen / Remote This is a hybrid training and can be followed remotely. More information Mechelen / Remote This is a hybrid training and can be followed remotely. More information Mechelen / Remote This is a hybrid training and can be followed remotely. More information | Sign up |
March 31, 2025April 1, 2025April 2, 2025April 3, 2025 | 4 days | Utrecht / Remote This is a hybrid training and can be followed remotely. More information Utrecht / Remote This is a hybrid training and can be followed remotely. More information Utrecht / Remote This is a hybrid training and can be followed remotely. More information Utrecht / Remote This is a hybrid training and can be followed remotely. More information | Sign up |
All courses can also be conducted within your organization as customized or incompany training.
Our training advisors are happy to help you provide personal advice or find Incompany training within your organization.
Trainers
Prior knowledge courses
Follow-up courses
"Extremely good teacher"Sander
-
Hoge waardering
-
Praktijkgerichte trainingen
-
Gecertificeerde trainers
-
Eigen docenten