Spring AI 2.0 moved the tool calling loop into the advisor chain. That means you can hook into it and watch it run. I built a streaming chat where every tool call shows up live as a pill, "Calling getWeatherForecast...", using one small custom advisor. github.com/danvega/tool...
Stop passing null to your Java records. If you're using Spring Data JDBC with a generated id, a static factory method hides the null where it belongs. Same pattern you already use: List.of, Map.of, LocalDate.of. Worth a full video?
You're a single setting away from deploying a team of agents in Claude Code 🤖
🧠 What if you could control how much your AI "thinks" before responding? Playing with Gemini 2.5 Pro's thinking budget in Spring AI. One parameter changes everything.
I'm overwhelmed with so many emotions right now, mostly joy. I'm proud of how far I've pushed myself. If you had told that kid struggling to learn programming 24 years ago that this is how life would turn out, he never would have believed you.
I use custom slash commands for a variety of tasks. In this one I replaced some custom bash script I wrote that will create the initial markdown with the correct yaml front matter for this new blog post 🤖✨
Spring Boot 4's dependency tree showing Jackson 3 in action! Notice the new tools.jackson.* packages (Jackson 3 core) alongside com.fasterxml.jackson.annotations:2.20. This isn't a mistake, Jackson 3 deliberately shares annotations with v2 for compatibility 🎯
Spring Boot 4 makes HTTP interface configuration SO much cleaner! 🎯 No more manual proxy factories and boilerplate. Just use ImportHttpServices and you're done. From 5+ lines of config per client → 1 annotation ✨
🚀 Spring Boot 4 tip: Jackson 3 brings JsonMapper as the preferred way to read JSON! Notice the new import. No more ObjectMapper from com.fasterxml! JsonMapper is now your go-to for JSON operations in modern Spring apps.
🎉 Spring Framework 7 brings retry capabilities INTO core! No more external spring-retry dependency needed! Reach for the RetryTemplate When you need MORE control than Retryable can give you 💪
Spring Boot 4 tip: Collections with nullable elements (List<Nullable String>) help catch NullPointerExceptions at compile-time instead of runtime. No more surprises when processing API responses that might contain null values! 🛡️ #SpringBoot #javabh
Spring Boot 4's null-safety is here! 🎯 @NullMarked (JSpecify + NullAway) makes nullness explicit. No more guessing if findUserByEmail() returns null. IDE catches NPEs at compile-time. Your type signatures finally tell the truth.
As we prepare for the next generation of Spring Boot 4 coming in November it's time to reflect on all of the amazing features that 3.x brought us. What are some of your favorite features?
My YouTube Channel recently crossed 7 Million views which is just mind blowing 🤯 Thank you for your continued support. I have had so many people come up to this week and thank me for my videos and it honestly makes me so happy to hear that.
If you want to learn about my favorite features in Spring Boot 3.x and what's coming in Spring Boot 4 and you're at KCDC join me at 1:00 PM in room 2211
Running Google's Gemma3 locally with Docker Model Runner and talking to it from Java using Spring AI and the OpenAI compatible API 🤩
With Stream Gatherers (full code not shown) I get a solution that is more readable, reusable, encapsulated and parallel friendly 🥳 🧵 3/4
I could use a map then transform approach which is a little bit cleaner but still not great 🧵 2/4
🔥 JDK 24 - Stream Gatherers I have some blog posts and I want to show 3 recent posts for every category. Before JDK 24 I might have done something like this 🧵 1/4
Going to learn about using GraalVM in production with @alina-yurenko.bsky.social
Thoughts on learning to code with IDEs: I use them daily and fully support their benefits. However, I worry new programmers might become too dependent on them. True learning comes from trying, failing, and figuring out why something didn't work. Failure is our greatest teacher in coding. 🧵 1/3
Getting ready to watch Mark and Asir talk about Building Intelligent Java Apps 🤖