description View Syllabus

Spring Boot Complete Course

From Core Java to Microservices - Interactive Codelabs
For HCL Java Training
20
Codelabs
24
Hours
4
Sections
1
code
Codelab 1.1

Java Platform, Data Types & Control Flow

Master Java fundamentals including JVM architecture, primitive types, and control structures.

Topics Covered
Java Platform (JVM, JRE, JDK) • JVM Architecture • Primitive data types & arrays • Branching & looping statements
What You'll Build
Calculator application with menu-driven interface using control flow and array-based calculation history
apps
Codelab 1.2

Object-Oriented Programming Complete

Deep dive into OOP concepts with classes, inheritance, interfaces, and polymorphism.

Topics Covered
Classes & objects • Inheritance & interfaces • Abstract classes • Method overloading & overriding • Polymorphism • Packages & access modifiers
What You'll Build
Complete banking system with Account hierarchy and multi-package structure demonstrating inheritance and polymorphism
folder
Codelab 1.3

Exception Handling & File I/O

Learn robust error handling and file operations with try-catch, custom exceptions, and Java I/O.

Topics Covered
Try-catch-finally • Custom exceptions • Checked vs unchecked • File I/O streams • BufferedReader & PrintWriter • try-with-resources
What You'll Build
Contact book application with file persistence, custom validation exceptions, and CSV import/export functionality
inventory_2
Codelab 1.4

Collections Framework & Generics

Master Java collections with List, Set, Map, and type-safe generic programming.

Topics Covered
List (ArrayList, LinkedList) • Set (HashSet, TreeSet) • Map (HashMap, TreeMap) • Generics • Comparable & Comparator • Iterator patterns
What You'll Build
Library management system with book catalog, member database, and borrowing history using appropriate collection types
memory
Codelab 1.5

Memory Management & Garbage Collection

Understand JVM memory model, garbage collection algorithms, and performance tuning.

Topics Covered
Heap vs Stack memory • Object lifecycle • GC algorithms (Serial, Parallel, G1, ZGC) • Memory leaks • JVM flags & tuning • VisualVM profiling
What You'll Build
Memory analysis exercises with intentional leaks, profiling with VisualVM, and GC tuning experiments
2
function
Codelab 2.1

Functional Programming & Streams API

Transform your coding style with lambdas, functional interfaces, and powerful stream operations.

Topics Covered
Lambda expressions • Functional interfaces • Stream API (map, filter, reduce) • Method references • Collectors • Parallel streams
What You'll Build
Sales analytics application with functional style including data filtering, transformation, and complex aggregations
schedule
Codelab 2.2

Optional, Date/Time & Modern Java Features

Eliminate null pointer exceptions and handle dates properly with Java 8+ modern APIs.

Topics Covered
Optional best practices • LocalDate, LocalDateTime, ZonedDateTime • Date formatting & parsing • Duration & Period • Records • Switch expressions
What You'll Build
Conference scheduling system with time zones, Optional null-safety, and configuration manager using Records
bolt
Codelab 2.3

Asynchronous Programming Complete

Build responsive applications with threads, executors, and CompletableFuture.

Topics Covered
Thread basics & lifecycle • ExecutorService patterns • Thread pools • CompletableFuture • Async composition • Exception handling in async code
What You'll Build
Microservice orchestration with CompletableFuture chaining multiple async API calls with fallback strategies
description
Codelab 2.4

Logging with Log4j

Master production-grade logging with Log4j2 for debugging and monitoring.

Topics Covered
Log4j2 configuration • Log levels • Appenders (console, file, rolling) • Layouts & patterns • MDC context • Best practices for production logging
What You'll Build
Multi-environment logging setup with file rotation, error tracking, and structured logging patterns
bug_report
Codelab 2.5

IDE Debugging Mastery

Become a debugging expert with breakpoints, watches, and advanced IDE techniques.

Topics Covered
Breakpoint types • Step debugging • Watch expressions • Conditional breakpoints • Stack traces • Thread debugging • Remote debugging setup
What You'll Build
Debug challenge exercises covering common patterns, thread issues, performance problems, and remote debugging configuration
3
eco
Codelab 3.1

Spring Core, IoC, DI & Spring Boot Web

Start your Spring journey with dependency injection, auto-configuration, and REST basics.

Topics Covered
IoC container • Dependency Injection • Component scanning • @Controller, @Service, @Repository • Spring Boot auto-configuration • Basic REST endpoints
What You'll Build
Task Management API - Part 1: Basic CRUD endpoints with in-memory storage and layered architecture
api
Codelab 3.2

RESTful APIs, Swagger & Exception Handling

Design professional REST APIs with OpenAPI documentation and global error handling.

Topics Covered
REST best practices • HTTP status codes • Request/Response DTOs • Swagger/OpenAPI integration • @ControllerAdvice • Custom exceptions • Validation
What You'll Build
Task Management API - Part 2: Add Swagger docs, validation, global exception handling, and search/filter endpoints
storage
Codelab 3.3

ORM Concepts & Spring Data JPA

Persist data effortlessly with JPA entities, repositories, and relationship mappings.

Topics Covered
JPA entities & annotations • Repository patterns • Query methods • @Query • Relationships (OneToMany, ManyToOne) • Transactions • H2 vs PostgreSQL
What You'll Build
Task Management API - Part 3: Migrate to database persistence with Task-Category relationships and custom queries
lock
Codelab 3.4

Advanced JPA Locking & Spring Security

Handle concurrent updates and secure your API with authentication and authorization.

Topics Covered
Optimistic locking (@Version) • Pessimistic locking • Spring Security setup • UserDetailsService • BCrypt password encoding • Role-based access control
What You'll Build
Task Management API - Part 4: Add user authentication, role-based permissions, and concurrent update handling
badge
Codelab 3.5

JWT Authentication & Spring Cloud

Implement token-based authentication and explore cloud-native patterns.

Topics Covered
JWT structure • Stateless authentication • Token generation & validation • Spring Cloud Config • Externalized configuration • Profiles
What You'll Build
Task Management API - Part 5: Replace session-based auth with JWT tokens and externalize config with Spring Cloud Config
waves
Codelab 3.6

Spring Boot Reactive Stack & R2DBC

Build high-performance non-blocking applications with WebFlux and reactive databases.

Topics Covered
Reactive programming concepts • Mono & Flux • WebFlux REST APIs • R2DBC for reactive DB access • Backpressure • When to use reactive vs blocking
What You'll Build
Task Management API - Part 6: Create reactive version using WebFlux and R2DBC for high-throughput scenarios
mail
Codelab 3.7

Spring Messaging with JMS

Build event-driven architectures with message queues and asynchronous processing.

Topics Covered
Message queue concepts • Spring JMS • ActiveMQ setup • @JmsListener • Message producers • Point-to-point vs Pub-Sub • Error handling in messaging
What You'll Build
Task Management API - Part 7: Add async notifications using JMS for task assignments and status changes
check_circle
Codelab 3.8

Unit Testing & Remote Debugging

Write comprehensive tests and debug production issues with remote debugging.

Topics Covered
JUnit 5 • MockMvc • @SpringBootTest • Mockito • Test slices (@WebMvcTest, @DataJpaTest) • Remote debugging setup • JDWP
What You'll Build
Task Management API - Part 8: Add comprehensive unit & integration tests, setup remote debugging for Docker deployments
4