- What is Spring Framework
- Problems with traditional Spring
- What is Spring Boot
- Spring vs Spring Boot
- Advantages of Spring Boot
- Features of Spring Boot
- Auto-configuration
- Starter dependencies
- Embedded servers (Tomcat, Jetty)
- JDK installation and setup
- IDE setup (IntelliJ IDEA)
- Spring Initializr
- Creating first Spring Boot application
- Project folder structure
- Running Spring Boot application
- Understanding
@SpringBootApplication
- What is a build tool
- Maven overview
- Maven project structure
pom.xmlexplained- Dependencies and plugins
- Maven lifecycle
- Difference between Maven and Gradle
- Layered architecture
- Controller layer
- Service layer
- Repository layer
- Package structure best practices
- Request flow in Spring Boot
@Component@Service@Repository@Controller@RestController@RequestMapping@GetMapping,@PostMapping,@PutMapping,@DeleteMapping@RequestBody@RequestParam@PathVariable@Configuration@Bean@Autowired
- Inversion of Control (IoC)
- Dependency Injection (DI)
- Types of DI
- Field Injection
- Setter Injection
- Constructor Injection
- Best practices for DI
- Interview questions on DI
application.propertiesapplication.yml@Value@ConfigurationProperties- Externalized configuration
- Profile-specific configuration
- dev
- test
- prod
- Activating profiles
- What is a Spring Bean
- Bean creation process
- Bean lifecycle
- Initialization and destruction
@PostConstruct@PreDestroy
- Singleton (default)
- Prototype
- Request
- Session
@Scopeannotation- Use cases of each scope
- ORM concepts
- JPA overview
- Hibernate basics
- Entity mapping
@Entity,@Id,@GeneratedValue- Repository layer
JpaRepository- CRUD operations
- H2 / MySQL integration
- REST architecture principles
- HTTP methods
- HTTP status codes
- DTOs
- Validation using
@Valid - Request and response handling
- Pagination and sorting (basic)
- Exception handling in Spring Boot
@ExceptionHandler@ControllerAdvice- Custom exceptions
- Logging basics
- SLF4J and Logback
- Log levels
- Security fundamentals
- Authentication vs Authorization
- Spring Security architecture
- Securing REST APIs
- Role-based access
- JWT basics (introduction)
- Unit testing basics
- JUnit
- Mockito
- Mocking dependencies
- Testing controllers and services
- Spring Boot Actuator
- Health checks
- Metrics and monitoring
- Caching
@EnableCaching@Cacheable
- Scheduling
@EnableScheduling@Scheduled
- Interceptors
- Embedded Tomcat
- JAR vs WAR
- Docker basics
- Dockerizing Spring Boot application
- CI/CD overview (Jenkins)
- Cloud deployment overview
- AWS
- Azure
- GCP
- Monolith vs Microservices
- Spring Cloud overview
- Eureka Server (Service Discovery)
- API Gateway
- Spring Cloud Config
- Inter-service communication
- Distributed tracing
- Sleuth
- Zipkin
After completing this syllabus, you will be ready for:
- Java Backend Developer
- Spring Boot Developer
- Java Full Stack (Backend)
- Internship and fresher roles