Abstraction — Practical Demo
Hands-on code examples and step-by-step walkthroughs for Abstraction in Java.
Hands-on code examples and step-by-step walkthroughs for Abstraction in Java.
Hands-on examples of the Adapter pattern — wrapping incompatible APIs, integrating third-party SDKs, and using Spring DI as an adapter.
Scenario-based walkthrough of designing a production-quality REST API with versioning, pagination, error handling, and rate-limiting headers in Spring Boot 3.
Hands-on examples for externalized configuration using profiles, @ConfigurationProperties, @Value, and startup validation in Spring Boot.
Hands-on walkthroughs of AtomicInteger, AtomicReference, LongAdder, and CAS-based patterns including the ABA problem.
Hands-on code examples for Spring Security authentication — UserDetailsService, BCrypt, custom login endpoint, and accessing the current user.
Hands-on examples for Spring Security authorization — URL rules, @PreAuthorize, SpEL expressions, ownership checks, and testing access control.
Hands-on examples showing how Spring Boot auto-configuration works, how to observe it, override it, and write your own.
Hands-on examples of the Builder pattern — from the classic Effective Java idiom to Lombok @Builder to a step-by-step Director.
Scenario-based walkthrough of implementing cache-aside with Redis in Spring Boot — including TTL configuration, cache eviction, and stampede prevention.
Hands-on code examples and step-by-step walkthroughs for Classes & Objects in Java.
Hands-on examples showing how the Collection/Map interface tree works in practice.
Hands-on examples for groupingBy, toMap, joining, partitioningBy, and custom collectors.
Hands-on Spring Boot HikariCP configuration examples, pool monitoring, leak detection, and Kubernetes multi-pod sizing.
Hands-on examples for CSRF protection and CORS configuration in Spring Boot — Cookie-based CSRF for SPAs, production CORS setup, fixing the preflight 401 problem, and testing with MockMvc.
Hands-on examples for building domain-specific exception hierarchies, adding typed fields, chaining exceptions, and integrating with Spring Boot's @ControllerAdvice.
Step-by-step runnable examples for MySQL vs PostgreSQL vs H2 — UUID primary keys, H2 compatibility mode, profile-based datasource switching, and Testcontainers.
Scenario-based walkthrough of implementing a choreography-based Saga for an e-commerce order flow with idempotent Kafka consumers in Spring Boot.
Hands-on code examples and step-by-step walkthroughs for Encapsulation in Java.
Hands-on code contrasting good and bad exception handling patterns — swallowing, double-logging, flow control misuse, and InterruptedException restoration.
Hands-on Spring Boot demo of @ControllerAdvice, ProblemDetail error responses, validation error shaping, and the catch-all exception handler pattern.
Hands-on code examples exploring the Throwable tree, checked vs. unchecked exceptions, and how to inspect exception types at runtime.
Hands-on examples of the Factory Method pattern — from classic inheritance-based variants to static factories to Spring @Bean factories.
Hands-on examples for Function, Predicate, Consumer, Supplier, and composition patterns.
Hands-on code examples for generic classes, generic methods, bounded type parameters, and the diamond operator.
Hands-on Spring Boot examples demonstrating HTTP methods, status codes, headers, ETags, and content negotiation.
Hands-on examples comparing List.of, Collections.unmodifiableList, and Arrays.asList — and showing defensive copying at API boundaries.
Hands-on examples covering index creation, composite indexes, covering indexes, and reading EXPLAIN plans in PostgreSQL.
Hands-on code examples and step-by-step walkthroughs for Inheritance in Java.
Hands-on walkthrough of @SpringBootTest with TestRestTemplate, @MockBean for external dependencies, and Testcontainers for real database integration.
Hands-on examples for Iterator, ListIterator, ConcurrentModificationException, and safe removal patterns.
Hands-on walkthroughs of ExecutorService, CompletableFuture pipelines, CountDownLatch, and Semaphore.
Hands-on code examples for JPA entity mapping, relationships, fetch types, and Spring Data auditing in a simple e-commerce domain.
Hands-on code examples and step-by-step walkthroughs for JUnit 5 lifecycle, assertions, and parameterized tests.
Hands-on examples for JWT authentication in Spring Boot — generating tokens, validating with Spring Security's resource server, custom claims, and refresh token pattern.
Hands-on code examples and step-by-step walkthroughs for Lambda expressions in Java.
Hands-on examples for ArrayList vs LinkedList, pre-sizing, safe removal, and subList behavior.
Hands-on walkthroughs of ReentrantLock, ReadWriteLock, tryLock with timeout, and Condition-based signaling.
Hands-on examples for HashMap, LinkedHashMap, TreeMap, and ConcurrentHashMap — frequency counting, LRU cache, range queries, and atomic operations.
Hands-on examples for rounding, overflow-safe arithmetic, trigonometry, and cross-platform reproducibility.
Hands-on examples for all four kinds of method references — static, bound, unbound, and constructor.
Scenario-based walkthrough of building a two-service Order + Inventory microservices topology with service discovery, Kafka events, and Spring Boot 3.
Hands-on code examples for creating mocks, stubbing behavior, verifying interactions, and capturing arguments with Mockito.
Hands-on walkthrough of HTTP-level controller testing with MockMvc and WebTestClient — requests, assertions, security, and validation.
Hands-on examples demonstrating how N+1 queries occur and how to fix them with JOIN FETCH, @EntityGraph, and @BatchSize.
Hands-on Spring Boot examples for Redis caching, MongoDB document CRUD, and Spring Cache abstraction.
Hands-on examples for OAuth2 and OpenID Connect in Spring Boot — social login, resource server with external auth server, client credentials for microservices, and accessing OIDC user info.
Hands-on code examples and step-by-step walkthroughs for equals, hashCode, toString, and clone.
Hands-on examples of manual Observer, Spring Application Events, @TransactionalEventListener, and @Async observers.
Hands-on Springdoc setup, @Operation/@Schema annotations, JWT security scheme, and production-safe configuration for Spring Boot REST APIs.
Hands-on examples for Optional creation, chained transformations, orElseGet laziness, and common anti-patterns.
Hands-on examples for Optional creation, safe retrieval, chaining, and the anti-patterns to avoid.
Hands-on examples demonstrating when parallel streams help, when they hurt, and common correctness pitfalls.
Hands-on code examples and step-by-step walkthroughs for Polymorphism in Java.
Hands-on code examples and step-by-step walkthroughs for Java primitives, autoboxing, unboxing, the Integer cache, and null NPE traps.
Hands-on examples showing manual proxies, JDK dynamic proxies, and how Spring AOP uses proxies for @Transactional and @Cacheable.
Hands-on examples for ArrayDeque as stack/queue, PriorityQueue for task scheduling, and BlockingQueue for producer-consumer.
Hands-on code examples and step-by-step walkthroughs for Records (Java 16+) in Java.
Scenario-based walkthrough of implementing Circuit Breaker, Retry, Bulkhead, and Timeout with Resilience4j in a Spring Boot 3 microservice.
Hands-on examples of REST resource naming, versioning, idempotency keys, HATEOAS links, and pagination in Spring Boot.
Scenario-based walkthrough of making a Spring Boot service horizontally scalable — stateless sessions with Redis, connection pool tuning, read replica routing, and async offloading.
Step-by-step Flyway and Liquibase migration examples in Spring Boot — from first migration to rollback-safe production patterns.
Hands-on code examples and step-by-step walkthroughs for Sealed Classes (Java 17+) in Java.
Hands-on code examples and step-by-step walkthroughs for Spring Security's filter chain configuration.
Hands-on examples for HashSet, LinkedHashSet, and TreeSet — uniqueness enforcement, ordering differences, and set operations.
Hands-on step-by-step examples of all four Java Singleton idioms with thread-safety analysis.
Step-by-step scenario showing a notification system refactored through all five SOLID principles in a Spring Boot context.
Hands-on examples for Comparable, Comparator factory methods, multi-field sorting, and null-safe ordering.
Hands-on examples for enabling and securing Actuator endpoints, writing custom health indicators, and exporting metrics with Micrometer/Prometheus.
Hands-on examples exploring what common starters wire up, how to inspect dependencies, and how to swap out components like the embedded server.
Hands-on walkthrough of @WebMvcTest, @DataJpaTest, and @JsonTest with realistic Order API examples.
Hands-on examples for @SpringBootTest, @WebMvcTest, @DataJpaTest, @MockBean, and Testcontainers in a realistic order service project.
Hands-on examples for @Cacheable, @CacheEvict, @CachePut, Caffeine, and Redis cache configuration in a Spring Boot application.
Hands-on examples for closed interface projections, nested projections, DTO projections with records, and dynamic projections.
Hands-on examples for Spring Data JPA query methods, @Query JPQL/native SQL, @Modifying, pagination, and the Specification API.
Hands-on Spring MVC examples covering DispatcherServlet internals, parameter binding, validation, content negotiation, and interceptors.
Hands-on SQL examples covering JOINs, GROUP BY, window functions, and subqueries in a Spring Boot JDBC context.
Hands-on examples of Strategy using classic classes, lambdas, Spring DI, and the strategy registry for runtime selection.
Hands-on walkthroughs of stream pipelines — filtering, mapping, flatMap, reduce, and lazy evaluation.
Hands-on examples for String immutability, StringBuilder loop-building, and StringJoiner delimited assembly.
Hands-on examples showing race conditions, synchronized fixes, volatile usage, and the happens-before relationship.
Hands-on examples for running PostgreSQL, Redis, and Kafka in Docker containers during tests, with Spring Boot 3.1+ @ServiceConnection.
Hands-on walkthroughs of immutable objects, defensive copying, ThreadLocal usage (and cleanup), and safe publication.
Hands-on code examples and step-by-step walkthroughs for Thread creation, lifecycle states, start/join/interrupt.
Hands-on examples for @Transactional propagation, readOnly optimization, rollbackFor, the self-invocation trap, and programmatic transactions.
Hands-on examples of Spring @Transactional — propagation, isolation levels, deadlock handling, and common pitfalls.
Hands-on examples for try/catch/finally, multi-catch, try-with-resources, suppressed exceptions, and finally pitfalls.
Hands-on code examples demonstrating what you can and cannot do because of Java's type erasure — instanceof, new T(), overloading, and the super type token pattern.
Hands-on code examples for the diamond operator, generic method inference, var for local variables, and lambda target typing.
Hands-on walkthroughs of creating virtual threads, measuring scalability, detecting pinning, and using StructuredTaskScope.
Hands-on walkthroughs of Object.wait(), notify(), notifyAll() with producer-consumer patterns and timed waits.
Hands-on Spring WebFlux examples covering Mono/Flux basics, annotated controllers, functional routing, parallel I/O with Mono.zip, and SSE streaming.
Hands-on code examples for unbounded wildcards, upper-bounded (? extends T), lower-bounded (? super T), and the PECS rule.
Hands-on examples for autoboxing, the Integer cache trap, parse methods, and unboxing NullPointerException.