Spring Boot
Convention-driven Java services.
Spring Boot is taught here in 13 lessons, running from Project setup and your first controller through to Next steps: WebFlux, messaging and native images. Each lesson takes one topic, shows the working code, and links onward to the next, so the course can be read straight through in order.
| Track | Back-end Development |
| Lessons | 13 |
| Level | Beginner to intermediate |
| Reading time | about 3 hours |
| Prerequisites | Helpful, but not required: Rust |
Lessons
- Project setup and your first controllerGenerate a project, understand the layout, and get an HTTP endpoint answering within a few minutes.
- REST controllers and dependency injectionThe HTTP annotations you will use daily, DTOs at the boundary, and constructor injection done properly.
- Configuration, JPA data access and profilesLayered properties, environment-specific profiles, and a repository layer with the traps called out.
- Request validation and global error handlingBean Validation on DTOs, custom constraints, one consistent error shape with @RestControllerAdvice, and ProblemDetail responses.
- JPA relationships, queries and paginationMapping associations, choosing fetch strategies, writing JPQL, projecting DTOs, exposing Pageable, and killing N+1 queries.
- Schema migrations with Flyway and seed dataVersioned and repeatable migrations, baselining an existing schema, repeatable seed scripts, and a rollback strategy that works.
- Transactions, locking and concurrencyPropagation and rollback rules, the self-invocation trap, optimistic versioning, pessimistic locks and retry strategies.
- Securing the API with Spring SecurityThe filter chain, stateless JWT resource servers, method security, password hashing, and the CORS and CSRF decisions you must make.
- Testing Spring Boot applicationsFull-context versus slice tests, MockMvc, @DataJpaTest, Testcontainers against a real database, and when to mock.
- Observability with Actuator, logging and metricsExposing the right endpoints, custom health indicators, Micrometer metrics, and structured logs you can actually search.
- Caching, async processing and schedulingCache abstractions with Caffeine and Redis, correct cache keys, @Async executors that do not lose exceptions, and reliable scheduling.
- Packaging and deploying a Spring Boot serviceLayered jars, Dockerfiles and buildpacks, externalised configuration, container-aware memory settings and safe rolling updates.
- Next steps: WebFlux, messaging and native imagesChoosing reactive or servlet, using WebClient correctly, integrating Kafka, building a GraalVM native image, and where to read next.
More in Back-end Development
Node.js PHP Java HTTP Go Rust Laravel Ruby GraphQL
FAQ
How long does the Spring Boot course take?
It has 13 lessons, about 3 hours of reading. Expect roughly twice that if you type out and run every example.
Do I need prior experience for Spring Boot?
Not strictly. It helps to have read Rust first, because some lessons build on it, but every lesson explains its own assumptions.
What should I read after Spring Boot?
Continue with Laravel (14 lessons), the next course in Back-end Development.