Spring Boot Syllabus
Spring Boot Core
- Dependency Injection
- Setter,Contructor,Field injection
- Composition,Aggregation
- Spring Boot Starters
- Spring Boot Auto Configuration
- Spring Boot Annotations
- Spring Boot Initializr
- Spring Boot CLI
- Spring Boot DevTools
- Spring Boot Application Properties/YAML
- Profiles and Environment Configuration
- Embedded Servers (Tomcat, Jetty, Undertow)
- Spring Boot Actuator
- Spring Boot Scheduling
Spring Boot Data JPA
- Spring Data JPA Overview
- JpaRepository / CrudRepository / PagingAndSortingRepository
- Entity Mapping (@Entity, @Table)
- Primary Key (@Id, @GeneratedValue)
- Field Mapping (@Column, @Transient, @Enumerated)
- Relationships
- @OneToOne
- @OneToMany
- @ManyToOne
- @ManyToMany
- mappedBy, cascade, fetch
- Query Methods (Derived Query Methods)
- Custom JPQL Queries (@Query)
- Native SQL Queries (@Query(nativeQuery = true))
- Named Queries
- Pagination and Sorting (Pageable, Sort)
- Specification and Criteria API
- EntityManager Usage
- Auditing (@CreatedDate, @LastModifiedDate)
- Transaction Management (@Transactional)
Spring Boot Web MVC
- Spring MVC Architecture Overview
- @Controller vs @RestController
- Request Mapping Annotations
- @RequestMapping
- @GetMapping, @PostMapping, @PutMapping, @DeleteMapping
- Path Variables and Request Parameters
- @PathVariable
- @RequestParam
- Request and Response Bodies
- @RequestBody
- @ResponseBody
- Model and View Handling (Model, ModelMap, ModelAndView)
- Form Handling
- View Resolvers (Thymeleaf, JSP, etc.)
- Data Binding and Validation
Spring Boot REST API
- @RestController
- @RequestMapping / @GetMapping / @PostMapping / @PutMapping / @DeleteMapping
- @RequestBody and @ResponseBody
- @PathVariable and @RequestParam
- Status Codes with ResponseEntity
- Custom Response Structures (DTOs)
- Exception Handling
- @ControllerAdvice
- @ExceptionHandler
- Validation (@Valid, BindingResult)
- Content Negotiation (JSON/XML)
- OpenAPI / Swagger Documentation Integration
- Postman / cURL Testing Practices
Microservices
- Spring Cloud Config Server
- Spring Cloud Eureka
- Spring Cloud Gateway
- Spring Cloud Feign (OpenFeign)
- Spring Cloud Circuit Breaker / Resilience4j
- Spring Cloud Zipkin
- Spring Cloud Stream
- kafka,active mq, rabbit mq