Skip to main content

Java

Builder Design Pattern in Java: Complete Guide with Examples

The Builder pattern separates complex object construction from its representation, eliminating telescoping constructors and invalid partial state. Complete Java guide with runnable examples, Lombok @Builder, JDK usage (StringBuilder, Stream.Builder), pitfalls, and FAQs.

Spring Security 5 to 6 to 7 Migration: SecurityFilterChain, Lambda DSL, and the Silent Authorization Changes

Of every breaking change in the Spring Boot 2 → 3 era, the removal of WebSecurityConfigurerAdapter generated the most confused stack traces I've debugged — because security configuration is the one place where "it compiles and runs" tells you almost nothing about whether it still protects anything. This guide migrates Spring Security 5 configurations to the 6.x component model (Spring Boot 3.x), covers what tightens further in Spring Security 7 (Spring Boot 4), and flags the places where a mechanical conversion quietly changes your authorization behaviour.

RestTemplate to RestClient Migration Guide: Method Mapping, Error Handling, and the exchange() Trap

Spring Boot 4 finally forced the issue: RestTemplate, in maintenance mode since Spring 5, is out of the recommended path, and codebases full of getForObject() and exchange() calls need a plan. The good news is that RestClient (introduced in Spring 6.1 / Boot 3.2) was designed as the synchronous successor, so this migration is mostly mechanical — if you know the method-by-method mapping and the three places where behaviour quietly differs. This guide gives you both.

Hibernate 5 to 6 to 7 Migration Guide: The Breaking Changes and the Silent Ones

I have now taken three codebases through the Hibernate 5 → 6 → 7 path, and the same pattern repeated each time: the compile errors are the easy part, and the silent behaviour changes — query result types, ID generation, fetch semantics — are what reach production. This guide walks the migration in two deliberate hops (5→6, then 6→7), with the exact errors you will see at each stage and how to fix them. Do not attempt 5→7 in one jump; the diagnostics assume you pass through 6.

20 AI Prompts for Java Concurrency and CompletableFuture

20 copy-paste AI prompts for Java concurrency and CompletableFuture — from basics to advanced production patterns and debugging. Covers thread pools, ExecutorService, CompletableFuture chaining, fan-out/fan-in, timeout handling, virtual threads, deadlock diagnosis, thread dump analysis, and full concurrency audits.