[Revised 2023-11-27] Developing RESTful Web Services using Spring Boot 3.x
This course covers the process of developing a RESTful Web Services application using Spring Boot, and you can learn the basic knowledge required for designing a REST API.
5,015 learners
Level Basic
Course period Unlimited


[Update] A supplementary lecture (approximately 1 hour) titled “Jev — Deciding by Type” has been added to Section 4.
Hello. We’ve added a new supplemental lecture to the Practical LLM Service Development for Spring Developers (Part 1) course. In this approximately one-hour lecture, you’ll learn how to integrate TypeSafe AI’s recently released decision model, Jev, into a Spring Boot application.
Why was it added?
In Section 4, we covered how to use entity() to receive an LLM response as a Java object, as well as the practical pitfall of parsing breaking when the model wraps JSON in code fences. Whether you ask through a prompt or automate it with entity(), the limitation remains that you are ultimately "asking" the LLM to follow a particular format.
Jev takes a different approach. Instead of writing text, it chooses an answer from a predefined set of options and returns it along with its probability. In other words, the format is structurally guaranteed. Processing the same input in both ways makes it much clearer what to consider when designing "structured output." That is why we organized this content as an extension of Section 4.
What will you learn?
The Concept of Jev and System One Models: What It Means to Return a “Typed Decision” Instead of Text
The difference between LLMs and Jev: descriptive answers vs. multiple-choice answers, and what each does well and poorly
Three question types (choice · score · noul) and the
/v1/systemonerequest structureCalling from Spring: Call the Jev API with
RestClientand use a Java enum to create choices and convert the response in a type-safe manner.Comparison demonstration: Analyze the same movie review using
entity()and Jev, then compare speed, format errors, confidence, and consistency.
Updated materials included
Section 4 Example Code (ch4): Two Review Analysis APIs (
/api/movies/review/llm,/api/movies/review/jev) and the Addition ofJevClientSupplementary lecture slides and course materials
Comparison test scripts:
review-compare.shfor macOS andreview-compare.ps1for Windows
Things to know in advance
Jev is not a feature of Spring AI, but rather a separate external service provided by TypeSafe AI. In the course, it is called directly using Spring AI's
RestClient, not itsChatClient.Jev is currently in the early access stage, so there may be a wait to obtain an API key. Jev is disabled by default in the example code (
jev.enabled=false), so you can proceed with the existing exercises as usual even without a key. If you don't have a key, watch the demonstration in the video and follow along with a focus on the concepts and code.As this service has just been launched, its pricing or API may change later. If any changes occur, we will notify you again through a new announcement.
📌 Go directly to the course: https://inf.run/VVpnV
If you have any questions while taking the newly added lessons or get stuck during the hands-on exercises, feel free to leave a comment. We’ll continue to regularly add content that you can use right away in your work.




