Spring Boot
Building a REST service with Spring Boot: wired to real data, validated, and fast enough to trust in production.
Spring Boot Essentials
What Boot adds on top of plain Spring, and how to make it do what you want.
What Spring Boot adds to Spring: @SpringBootApplication, auto-configuration, and the conditions that decide which beans it creates.
Intermediate to Advanced6 cards · 4 qnot started
Spring Boot starters and the embedded server: one dependency instead of a dozen, and a web server inside your own jar.
Intermediate to Advanced6 cards · 4 qnot started
Configuring a Boot application: where a property can come from, which source wins, profiles, and binding properties into code.
Intermediate to Advanced6 cards · 4 qnot started
Building REST APIs
Mapping requests, validating input, and handling errors consistently.
Mapping HTTP requests to controller methods: verbs and paths, reading request data, and choosing the response.
Intermediate to Advanced6 cards · 4 qnot started
Validating request input with Bean Validation: constraint annotations, @Valid, and field-by-field error responses.
Intermediate to Advanced6 cards · 4 qnot started
Handling errors consistently in a REST API: custom exceptions, @ExceptionHandler, @RestControllerAdvice, status codes and one error body.
Intermediate to Advanced7 cards · 5 qnot started
Data Access
Repositories, two persistence models, and what a transaction actually wraps.
Spring Data repositories: CRUD without SQL, queries derived from method names, @Query, and what save() really does.
Intermediate to Advanced6 cards · 4 qnot started
Spring Data JDBC vs Spring Data JPA: persistence context, dirty checking, lazy loading, aggregates, and when to choose each.
Intermediate to Advanced7 cards · 4 qnot started
The JPA entity lifecycle: the four states an entity can be in, the operations that move it, and when its SQL runs.
Advanced7 cards · 5 qnot started
Transactions with @Transactional: what it wraps, when it rolls back, why self-calls skip it, and REQUIRES_NEW.
Intermediate to Advanced7 cards · 4 qnot started
Caching and Performance
Skipping work on purpose, and finding the work you did not mean to be doing.
Caching in Spring Boot: @Cacheable, @CachePut and @CacheEvict, cache keys, caching strategies, and the default provider's limit.
Intermediate to Advanced7 cards · 5 qnot started
Finding why a Spring Boot API is slow: the N+1 query problem, slow remote calls, and measuring before optimising.
Intermediate to Advanced6 cards · 4 qnot started