Spring Boot Development
Lesgeld
Cursus Spring Boot Development
In de cursus Spring Boot Development leer je de belangrijkste principes van Spring, waaronder het laden van beans in de bean container en dependency injection. Deze cursus biedt een stevige basis voor het ontwikkelen van applicaties met Spring Boot.
Spring Boot
Vervolgens wordt behandeld hoe in Spring Boot voorgedefinieerde configuraties fungeren als startpunt voor een Spring Boot applicatie. Ook wordt ingegaan op andere hoofdcomponenten
Cursus Spring Boot Development
In de cursus Spring Boot Development leer je de belangrijkste principes van Spring, waaronder het laden van beans in de bean container en dependency injection. Deze cursus biedt een stevige basis voor het ontwikkelen van applicaties met Spring Boot.
Spring Boot
Vervolgens wordt behandeld hoe in Spring Boot voorgedefinieerde configuraties fungeren als startpunt voor een Spring Boot applicatie. Ook wordt ingegaan op andere hoofdcomponenten van Spring Boot zoals de Autoconfigurator, de Actuator en het Command Line Interface (CLI). Deze componenten zijn essentieel voor het efficiënt ontwikkelen en beheren van je applicaties.
Dependency Injection
Uitgebreid wordt ingegaan op dependency injection met de bijbehorende annotaties zoals @Component, @Qualifier, @Repository en @Service. De interne werking van dependency injection met Java Reflection wordt toegelicht, zodat je een diepgaand begrip krijgt van hoe deze techniek je code kan verbeteren.
Application Configuration
Onderdeel van het cursusprogramma zijn ook de autoconfiguratiemogelijkheden in Spring Boot. Componenten kunnen met annotaties als @EnableAutoConfiguration, mits geregistreerd in met @Configuration geannoteerde klassen, aan elkaar worden gelinkt. Dit maakt het configureren van je applicatie een stuk eenvoudiger.
Aspect Orientation
Aspect Orientation in Spring Boot wordt ook behandeld. Crosscutting concerns in een applicatie zoals security of profiling kunnen in zogeheten aspects worden opgenomen, zonder de main program flow te verstoren. Dit helpt bij het organiseren van complexe applicaties.
Spring JDBC en Spring Data
Databasebenadering vanuit Spring Boot applicaties komt aan bod bij de behandeling van Spring JDBC en Spring Data. Diverse Spring templates, die boilerplate code helpen voorkomen zoals jdbcTemplate en MongoTemplate, evenals JPA repositories worden besproken. Dit maakt dat je effectief met databases kunt werken in je applicaties.
Spring REST
Spring Boot is bij uitstek geschikt om met compacte code REST API's te benaderen. Ingegaan wordt op de verschillende annotaties die hierbij van belang zijn, zoals @RestController, @ResponseStatus en @JsonView. Deze kennis is cruciaal voor het ontwikkelen van moderne webservices.
Spring Extensions
Tenslotte komen diverse Spring extensieprojecten aan de orde, zoals Spring Security en Spring Cloud. Deze extensies bieden aanvullende functionaliteiten en helpen je om schaalbare en veilige applicaties te bouwen.
Voor meer informatie over gerelateerde onderwerpen kun je ook de cursus Java Development met Spring bekijken.
Doelgroep Cursus Spring Boot Development
De cursus Spring Boot Development is bestemd voor ervaren Java Developers die Spring Boot willen gebruiken voor applicatie ontwikkeling.
Voorkennis Cursus Spring Boot Development
Ervaring met programmeren in Java en object oriëntatie is vereist om deel te kunnen nemen aan deze cursus. Voorkennis van het Spring Framework is bevorderlijk voor een goede begripsvorming.
Uitvoering Training Spring Boot Development
De concepten worden behandeld aan de hand van presentaties en demo's. De theorie wordt afgewisseld met oefeningen. De cursustijden zijn van 9.30 tot 16.30.
Certificering Spring Boot Development
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Spring Boot Development.
Modules
Module 1 : Spring Core
- Spring Framework Overview
- Spring Configuration
- Spring Dependency Injection
- Non IoC versus IoC
- Application Context
- Beans Life Cycle
- XML Configuration
- Configuration with Annotations
- Component Scanning
- Spring Java Configuration
- Aware Interfaces
Module 2 : Spring Boot
- What is Spring Boot?
- Advantages Spring Boot
- Spring Boot Flavors
- Key Spring Boot Components
- Spring Boot Starter
- Starter Dependencies
- Spring Boot Autoconfigurator
- @SpringBootApplication
- Spring Boot CLI
- Spring Boot Internals
- Spring Boot Actuator
Module 3 : Dependency Injection
- Non-IoC or Dependency Injection
- Benefits of Dependency Injection
- Constructor Dependency Injection
- Setter Dependency Injection
- Autowiring with @Autowired
- @Qualifier Annotation
- @Component Annotation
- @Repository and @Service
- Bean scopes
- Event Handling
- Internationalization
Module 4 : Application Configuration
- Configuration Classes
- @Configuration Annotation
- @Bean Annotation
- @Enable Annotations
- @EnableAutoConfiguration
- Autowiring and Component Scanning
- @EnableScheduling
- Wire External Values
- Spring Expression Language
- @Value Annotation
- @PropertySource Annotation
Module 5 : Aspect Orientation
- What is AOP?
- The need for AOP
- Crosscutting Concerns
- Traditional Approach
- Spring AOP
- AOP Concepts
- AOP Key Terms
- Aspects and Weaving
- Pointcuts and Joinpoints
- ProxyFactoryBean
- Spring AOP Configuration
Module 6 : Spring JDBC
- Spring and JDBC
- JDBC Architecture
- JDBC Drivers and URL’s
- Spring JDBC Data Access
- Spring DAO with JdbcTemplate
- Data Source Injection
- Querying using JdbcTemplate
- RowMapper
- Querying and Populating Objects
- Updating with JdbcTemplate
- ResultsetExtractor
Module 7 : Spring Data
- What is Spring Data?
- Spring Data Configuration
- CRUD Out of the Box
- JPA Repositories
- Persisting and Modifying Entities
- Spring Data Queries
- @Query Annotation
- Named and Async Queries
- Paging Results
- Transaction Handling
- @Transactional Annotation
- MongoDB Template
- Mapping and Inserting Documents
Module 8 : Spring REST
- REST Web Services
- @RestController
- HttpEntity and ResponseEntity
- Default Content Types
- Default Status Codes
- @ResponseStatus and HttpStatus
- Working with XML and JSON
- Multiple Representations
- Filtering with @JsonView
- REST Clients
- RestTemplate
- Sending HTTP Requests
- Reading Responses
Module 9 : Spring Security
- Spring Security Model
- Process Behind Security Interceptors
- Authentication Manager
- Configuring authentication
- Intercepting URLs
- Security at the method level
- Access Decision Manager
- Security Based on Roles
- Security Based on Identity
- Access Denied Handling
- Securing REST Services
- JSON Web Tokens
- OAuth2 Authentication
Module 10 : Spring Cloud
- What is Spring Cloud?
- Spring Cloud Config
- Eureka Service
- Spring Cloud Bus
- Spring Cloud Cluster
- Spring Cloud Security
- Spring Cloud Data Flow
- Spring Cloud Connectors
- Spring Cloud Task App Starters
- Spring Cloud Zookeeper
- Spring Cloud CLI
- Spring Cloud Gateway
- Spring Cloud Pipelines