Practical writing on Java, Spring, AI, and the craft of software engineering.

If you're building with Java and Spring (or trying to figure out where AI fits into your development workflow) you're in the right place. I write practical, beginner-friendly deep dives on Spring Boot, Spring AI, and software engineering fundamentals, collected here in chronological order.

Filtering by tag: Spring Boot

The New @RedisListener Annotation in Spring Boot 4.1
· 10 min read

The New @RedisListener Annotation in Spring Boot 4.1

Spring Boot 4.1 adds @RedisListener, one annotation that brings Redis Pub/Sub in line with @KafkaListener and @RabbitListener. No container wiring needed.

SSRF Protection in Spring Boot 4.1 with InetAddressFilter
· 13 min read

SSRF Protection in Spring Boot 4.1 with InetAddressFilter

Learn how Spring Boot 4.1's new InetAddressFilter protects your applications against Server-Side Request Forgery (SSRF) attacks with a single bean definition.

Lazy JDBC Connections in Spring Boot 4.1: One Property, Massive Performance Win
· 15 min read

Lazy JDBC Connections in Spring Boot 4.1: One Property, Massive Performance Win

Spring Boot 4.1 adds lazy JDBC connection fetching via spring.datasource.connection-fetch. See how it cuts connection hold time from 2 seconds to 15ms.

Spring Boot + Kafka in 10 Minutes: Sending Your First Message
· 18 min read

Spring Boot + Kafka in 10 Minutes: Sending Your First Message

Produce and consume your first Apache Kafka message with Spring Boot. Covers Docker Compose, KafkaTemplate, @KafkaListener, and Embedded Kafka for tests.

Spring Modulith Durable Events: Reliable Event Processing Without a Message Broker
· 21 min read

Spring Modulith Durable Events: Reliable Event Processing Without a Message Broker

Learn how Spring Modulith's event publication registry persists and replays failed events across restarts, giving you a transactional outbox with no message broker.

Introduction to Spring Modulith: Building Modular Monoliths with Spring Boot
· 22 min read

Introduction to Spring Modulith: Building Modular Monoliths with Spring Boot

Learn how Spring Modulith helps you build a modular monolith in Spring Boot with enforced module boundaries, application events, and verified architecture.

GraphQL for Java Developers with Spring Boot
· 33 min read

GraphQL for Java Developers with Spring Boot

Build GraphQL APIs in Java with Spring Boot 4 and Spring for GraphQL. A free course covering schema-first design, batch loading, unions, and AOT repositories.

Spring, Build Me a Coding Agent
· 26 min read

Spring, Build Me a Coding Agent

Build an autonomous coding agent in Spring AI with the Spring AI Agent Utils library. This tutorial adds file system tools, shell commands, and agent skills.

Getting Started with Error Handling in the RestClient
· 18 min read

Getting Started with Error Handling in the RestClient

Learn best practices for error handling with Spring's RestClient, including global exception handlers, custom exceptions, Problem Detail responses, and built-in retry with resilience methods in Spring Framework 7.