Architecting Spring Boot 4 with Official Spring gRPC Support
For years, the Spring community relied on excellent third-party starters (like net.devh) to bridge the gap between Spring Boot and gRPC. With the evolution of Spring Boot 4 and the…
Spring Data with Java Records
Java records are a new feature introduced in Java 14 that provides a concise way to declare classes that are meant to hold immutable data. Spring Data is a popular…
Documenting Your Data’s Reach: Generating API Docs for Spring Data REST
Spring Data REST is a fantastic tool for rapidly exposing your JPA entities as hypermedia-driven REST APIs. However, even the most intuitive APIs benefit from clear and comprehensive documentation. While…
Spring Micrometer: Tracing and Observability Made Easy
Observability is crucial for modern applications, allowing you to understand their behavior and performance. Spring Boot 3 introduces powerful observability features through Micrometer. Understanding Observability Observability involves collecting metrics, logs,…
Unleashing API Evolution: A Deep Dive into HATEOAS
In the world of RESTful APIs, the concept of HATEOAS (Hypermedia as the Engine of Application State) often sparks discussions. While it might seem complex at first glance, embracing HATEOAS…
Sealed Classes
Java 15 introduced a new feature called Sealed Classes, which allows developers to restrict the types that can extend a class or implement an interface. This feature is designed to…
Scaling the Gatekeeper: Load Balancing Multiple Instances of Spring Cloud Gateway
As your microservices ecosystem grows and traffic increases, a single instance of Spring Cloud Gateway might become a bottleneck or a single point of failure. To ensure high availability, fault…