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 Framework

Loading Resources in Spring Boot
Latest

Loading Resources in Spring Boot

· 19 min read

Learn how to load resources in Spring Boot using the Resource interface. This tutorial covers three approaches for loading files from the classpath, filesystem, and URLs.

HTTP Interfaces in Spring Boot 4: Say Goodbye to Boilerplate
· 19 min read

HTTP Interfaces in Spring Boot 4: Say Goodbye to Boilerplate

Learn how HTTP interfaces let you define declarative HTTP clients in Spring Boot, and discover how Spring Framework 7 eliminates the configuration boilerplate with @ImportHttpServices.

Spring Boot 4's Bean Registrar: A Cleaner Way to Register Beans Programmatically
· 12 min read

Spring Boot 4's Bean Registrar: A Cleaner Way to Register Beans Programmatically

Learn how Spring Boot 4's new BeanRegistrar interface simplifies programmatic bean registration in Spring Framework 7. This tutorial demonstrates dynamic bean creation based on environment properties, conditional registration with complex logic, and performance optimization techniques. Discover when to use BeanRegistrar vs @Bean annotations with practical code examples and testing strategies...

Testing Spring REST APIs with RestTestClient: A Complete Guide
· 22 min read

Testing Spring REST APIs with RestTestClient: A Complete Guide

Explore the new Rest Test Client in Spring Framework 7, a modern replacement for RestTemplate that provides a fluent API for testing REST APIs with improved type safety and better integration with modern testing practices.

First-Class API Versioning in Spring Boot 4
· 25 min read

First-Class API Versioning in Spring Boot 4

Learn how to implement API versioning strategies in Spring Boot 4 applications, including best practices for managing backwards compatibility and evolution of your REST APIs.

Spring Boot 3.x Features: Complete Guide to Major Updates (2022-2025)
· 52 min read

Spring Boot 3.x Features: Complete Guide to Major Updates (2022-2025)

Explore the transformative features introduced in Spring Boot 3.0 through 3.5, from Java 17 requirements and GraalVM native images to virtual threads and enhanced observability. This comprehensive guide covers each release's major improvements, including Docker Compose integration, Testcontainers support, structured logging, and SSL certificate management. Learn how Spring Boot 3.x...

How to add Request Headers using HTTP Interfaces in Spring Boot 3
· 5 min read

How to add Request Headers using HTTP Interfaces in Spring Boot 3

In this tutorial you will learn how to add a request header when using HTTP Interfaces in Spring Boot 3. This can be useful when you need to add a header to a single request or every single request. You will also learn how to view the headers that are...

Spring HTTP Interface Clients: Consuming HTTP services in Spring Boot
· 14 min read

Spring HTTP Interface Clients: Consuming HTTP services in Spring Boot

Learn all about the new HTTP Interfaces in Spring Framework 6 and Spring Boot 3 by building out a real world example.

Getting Started with Spring: A Beginner's Guide
· 13 min read

Getting Started with Spring: A Beginner's Guide