Engineering With Java: Digest #76
Spring AI with MCP, Rate limiting, GUI framework, Changes in JVM and more ...
đ Java Devs! Welcome to this weekâs addition! I hope youâre all doing great.
This week, we cover essential insights on:
đ˘ Get actionable Java/Spring Boot insights every week â from practical code tips to real-world use-case based interview questions.
Join 4300+ subscribers and level up your Spring & backend skills with hand-crafted content â no fluff.
Become paid subscriber and unlock all the benefits at $2.5/mo (with annual subscription).
Not convinced? Check out the details of the past work
But before we kick off , meme of the week đ
đď¸ Articles Of The Week (9)
Spring AI with External MCP Servers : This article shows how to take Spring AI beyond local tools by connecting to external MCP (Model Context Protocol) servers that expose real APIsâlike GitHub or SonarQubeâso Spring Boot apps can use those capabilities in AI prompts and workflows. It walks through setting up those remote MCP servers and configuring a Spring AI client to talk to them, letting your AI integration tap into multiple data sources and services rather than keeping everything in a single project
WebAuthn Passkey Login Backed by Spring Boot : This article walks through how to build a passkeyâbased login using WebAuthn backed by Spring Boot, showing how modern passwordless authentication works with platform authenticators like Touch ID, Windows Hello, and security keys. It covers creating and verifying registration and authentication challenges, integrating Spring Boot endpoints, and handling credentials securely so users get a smoother, phishingâresistant login experience without traditional passwords.
Best Java GUI Frameworks for Modern Applications : This article surveys the best Java GUI frameworks for modern applications, comparing options like JavaFX, Swing, SWT, Vaadin, and newer webâcentric approaches. It highlights each frameworkâs strengths, typical use cases, and ecosystem support so we can pick the right tool for desktop or rich web interfaces. The goal is to help teams choose a UI stack that balances productivity, performance, and longâterm maintainability.
Java Explores Carrier Classes to Extend Data-Oriented Programming Beyond Records : This article explores how Java is evolving âbeyond recordsâ by extending and enriching its data modeling capabilities with features like value types and enhanced pattern matching. It highlights efforts to make immutable, structured data easier and more expressive in Java without losing performance or clarity, and it connects these advancements to broader improvements in the languageâs type system and developer ergonomics. Overall, the piece shows Java steadily modernizing how we represent and work with data.
đ˘ Level up your system design & interview prep with ByteByteGo â expert-curated guides, visual diagrams & real-world patterns from the authors of the top system design books. Start mastering distributed systems the smart way
Rate Limiting Beyond âN Requests/secâ: This article explains adaptive rate limiting with Spring Cloud Gateway, showing how to dynamically throttle API traffic based on realâtime conditions rather than fixed quotas. It walks through using request patterns and response feedback to adjust limits on the fly, helping protect services from spikes and abuse while maintaining good performance and user experience.
From a JAR to a full-fledged MacOS app : This article walks through how to turn a plain Java JAR into a fullâfledged macOS desktop app using modern tooling like jpackage and the Java platformâs packaging capabilities. It covers bundling the JRE, configuring app icons and metadata, and producing a nativeâlooking .app bundle so Java apps feel like firstâclass citizens on macOS with proper installation and user experience.
Why Clean Architecture Confuses Everyone : This post tackles why Clean Architecture often feels confusing in realâworld projects, arguing that strict theoretical layering can overcomplicate simple apps and obscure what actually matters. The author shares how focusing on practical separation of concerns, clear boundaries, and real code examples helped them make the ideas usable rather than intimidating, turning architecture from a scary buzzword into a guide for maintainable systems.
Semantic LLM Cache: Vector-Based Caching for Java (Spring Boot) : This article introduces semantic LLM caching in Java and Spring Boot, a way to store and reuse responses based on meaning rather than exact input matches. Instead of basic keyâvalue caches, this approach uses vector embeddings so similar queries hit the same cached result, reducing load on models and speeding up responses while keeping results relevant even when inputs vary slightly. Itâs a practical way to make LLMâpowered apps more efficient without sacrificing quality.
Project Valhalla: Fundamental Changes in the JVM : This article gives a clear overview of Project Valhallaâs fundamental changes to the JVM â work thatâs shaping up how Java handles data and performance at its core. It explains how features like value types, specialized generics, and improved memory layouts aim to remove longâstanding inefficiencies in object handling without losing Javaâs safety. The result will be lighter, faster code with fewer hidden costs, bringing Java closer to the performance weâd expect from lowerâlevel languages while keeping its familiar model.
đĽ Recently Published In-house Blogs (6)
Spring Boot Interview Question â Securing Sensitive Fields in Records
Java Interview Question - Why you should not use static initializers?
Spring Boot Interview Question - Process Large Security Events File
đ˘ Checkout Java + Spring Boot + SQL Interview + Certification Prep -
It Includes
Grokking the Java Interview (Vol 1 & 2)
Grokking the Spring Boot Interview
Grokking the SQL Interview
Java SE 17 Developer Certification (1Z0-829) Guide
250+ Spring Framework Certification Practice Questions
âśď¸ Videos Of The Week (4)
Level Up Your LangChain4j Apps for Production : Author shared tips on building reliable AI apps with LangChain 4J, focusing on advanced RAG techniques, query transformers, and multiple content retrievers. She emphasized filtering irrelevant content, using metadata for access control, and wrapping RAG in tools for multi-step queries. She also covered dynamic tool management, âreturn immediateâ for direct responses, and using AI services as tools, while noting smaller models may not reliably call tools.
LazyConstants in JDK 26 : Author explained JDK 26âs preview feature, lazy constants, which let Java defer computation while guaranteeing immutability once initialized. Lazy constants (LazyConstant) and lazy collections (List.ofLazy/Map.ofLazy) compute values on-demand, safely under concurrency, and enable JVM optimizations like constant folding. The evolution from JDK 25 to 26 shows OpenJDKâs approach: start with low-level mechanisms (@Stable), refine them internally, then expose a clean, high-level API. JDK 27 will likely simplify the API further, dropping some leftover methods.
The Ralph Loop Explained: Automate AI Coding Tasks in Java : The Ralph Loop is a technique for long-running tasks where each iteration starts with a fresh AI context, reading progress from a file, avoiding context-window bloat. By externalizing state, it lets agents work autonomously on one task at a time, writing updates and committing code as they go. This approach is ideal for complex projects or batch features, letting developers âset it and forget itâ while the loop handles tasks step by step. The demo showed a Java vending machine project built entirely using this loop.
Spring AI Streaming Explained : This tutorial shows how to stream AI responses in Spring Boot using Spring AI, delivering output word by word like ChatGPT. Instead of waiting for the full response, a Flux stream sends chunks as theyâre generated, improving user experience. By producing Server-Sent Events (text/event-stream), the backend can stream structured data easily to the frontend for real-time display. The demo illustrated this with OpenAI, showing live, reactive streaming in action.
đ§âđť Jobs Of The Week (5)
Thats all for this week! Thanks for reading this far. If you liked it please share with your network.
Happy Coding đ
Suraj




