Spring Boot From Zero
Learn Spring Boot the way it's actually used: what auto-configuration really does, dependency injection and beans, building a REST API, configuration and profiles, persistence with Spring Data JPA, the service layer and validation, error handling, testing, security, and shipping to production. Mental-model-first, magic demystified.
- What Spring Boot Is & Your First App Spring is the giant toolbox; Spring Boot is Spring with auto-configuration, sensible defaults, and an embedded server so you go from zero to a running web app in minutes.
- Dependency Injection & Beans The heart of Spring: why dependency injection exists, what the IoC container and a bean actually are, declaring beans with @Component/@Service, and constructor injection over field @Autowired.
- Building a REST API: Controllers Turn a Spring app into a real HTTP API: @RestController, GET/POST mappings, path variables and query params, JSON request bodies, ResponseEntity for status codes, and how a request actually flows.
- Configuration & Profiles How Spring Boot reads externalized config: application.yml, @Value and @ConfigurationProperties, the precedence order that lets one jar run anywhere, profiles per environment, and keeping secrets out of your code.
- Persistence with Spring Data JPA Map a Book object to a database table with JPA, then let Spring Data generate a whole repository for you — save, find, derived queries — and learn where the ORM magic stops and you still owe the database your attention.
- The Service Layer, DTOs & Validation Give your API a spine: a thin controller, a transactional service holding business logic, DTOs that decouple the API from the database, and Bean Validation that rejects bad input before it ever reaches your code.
- Error Handling Done Right Turn raw exceptions into honest HTTP responses: per-controller @ExceptionHandler, app-wide @RestControllerAdvice, the right status code for each failure, and one consistent error body with Spring's ProblemDetail.
- Testing Spring Boot Apps Cash in the layering from Phase 6: unit-test the service with a mocked repository, slice-test the web layer with @WebMvcTest + MockMvc and the JPA layer with @DataJpaTest, then go end-to-end with @SpringBootTest and Testcontainers.
- Security with Spring Security Spring Security is a chain of servlet filters every request passes before your controller. Master that one idea and the rest — authN vs authZ, the SecurityFilterChain bean, password encoding, and stateless JWT — stops being voodoo.
- Production: Actuator, Packaging & Deployment Take a Spring Boot app from 'runs on my machine' to production: Actuator health and metrics endpoints, building a self-contained fat jar, prod config, Dockerizing, and where it actually runs.
- Where to Go Next You can build a layered, tested, secured REST API and deploy it. Honest signposts to where Spring goes from here — microservices, reactive, messaging — plus what to build.