This repository contain sandbox projects to showcase features of the Spring Boot framework.
All examples are written in Kotlin and built using Gradle.
Read details about the examples in their respective project roots.
- REST API
- CRUD JPA
- OAuth2 Token Relay
- OAuth2 Token Exchange
- OAuth2 Extended Authorization Server
- CQRS Kafka
- CDC Kafka
- OTEL Observability
Spring Boot is a framework for building applications for the JVM runtime. Spring Boot was created to make it easier to build and configure application based on the Spring framework. It is an opinionated framework that has a focus on convention over configuration. At it's core is the Spring IoC-container which enables the use of Dependency Injection and Aspect Oriented Programming.
The examples typically consists of a Frontend and a Backend application.
graph TD
A[Spring Frontend]:::spring
B[Spring Backend]:::spring
A --> B
classDef react fill: #58c4dc, stroke: #000000, color: #000000
classDef spring fill: #6cb52d, stroke: #000000, color: #000000
If the frontend is a JavaScript application then there is often a Frontend API application.
graph TD
A[React Frontend]:::react
B[Spring Frontend API]:::spring
C[Spring Backend]:::spring
A --> B
B --> C
classDef react fill: #58c4dc, stroke: #000000, color: #000000
classDef spring fill: #6cb52d, stroke: #000000, color: #000000
Most examples implement a "hello world" style logic that returns a greeting message when the user inputs a name.
- A user inputs the name "John" and clicks "Submit"
- The system generates a greeting "Hello John!" back to the user