Skip to main content

Uncategorized

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.

Zuul to Spring Cloud Gateway Migration: Routes, Filters, and the Blocking-Call Traps

The first time I ported a Zuul gateway to Spring Cloud Gateway, the routes took an afternoon — and the filters took two weeks. That ratio surprises every team that attempts this migration, because the route configuration looks superficially similar while the filter model is a different universe: Zuul 1 is a blocking servlet filter chain, Spring Cloud Gateway runs on Netty with Project Reactor, and a single hidden blocking call in a ported filter can stall your entire gateway. This guide covers the route conversion, the filter-by-filter port, and the blocking-call traps, in that order.

Spring Cloud Netflix to Modern Alternatives: The Complete Migration Guide (2026)

In 2020 I published a dozen tutorials on this site covering Eureka, Hystrix, Zuul, Ribbon, and Feign — the Spring Cloud Netflix stack. They were accurate then. Today, most of that stack is dead: Netflix put Hystrix into maintenance mode back in 2018, Zuul 1 and Ribbon followed, and the Spring team removed them from the Spring Cloud release train entirely. If you are still running any of these libraries on Spring Boot 2.x, this guide maps every Netflix component to its modern replacement and shows you the actual migration steps — including the parts that break.

8086 Microprocessor Architecture: BIU, EU, Pipeline, Pin Diagram, and I/O

How the Intel 8086 splits work between the Bus Interface Unit (BIU) and Execution Unit (EU) to create a two-stage pipeline, with the complete 40-pin signal reference (minimum and maximum mode), T-state bus cycle timing, even/odd memory banks, and the full I/O subsystem including 8255 PPI, 8259 PIC, and 8253 timer.

Java 25 LTS: Every JEP That Matters (with AI Prompts for Each Migration)

A JEP-by-JEP deep dive into Java 25 LTS — the features that will actually change how you write and profile Java. Each section includes a before/after code example, an explanation of what the JVM does differently, the pitfall to avoid, and a copy-paste AI prompt to retrofit your existing codebase. Covers JEP 495, 494, 485, 492, 488, 491, 454, and JFR method profiling.