Skip to content
Vincenzo RaccaVincenzo Racca
  • Home
  • Java
    • Spring
    • JPA
  • Pattern
    • Docker
    • Kubernetes
    • Other
  • About Me
  • GitHub (opens in a new tab)

Home

Last published posts

  • June 29, 2026

    API-first with Spring Boot 4 and OpenAPI Generator

    How to apply the API-first approach with Spring Boot 4 and OpenAPI Generator.

    Read more: API-first with Spring Boot 4 and OpenAPI Generator

  • April 18, 2026

    Project Leyden: speed up Spring Boot startup times with zero effort

    Spring Boot startup 80% faster with zero code.

    Read more: Project Leyden: speed up Spring Boot startup times with zero effort

  • November 22, 2025

    Automatic MDC logs in Spring WebFlux with spring-webflux-mdc

    Automatic Context Propagation with the spring-webflux-mdc library..

    Read more: Automatic MDC logs in Spring WebFlux with spring-webflux-mdc

  • August 18, 2025

    Webhook with Spring Boot

    Implementing webhooks with Spring Boot: a practical guide with client and server example.

    Read more: Webhook with Spring Boot

  • June 21, 2025

    REST API Versioning: by URL vs. Content Negotiation

    Example of versioning with OpenAPI and Spring Boot.

    Read more: REST API Versioning: by URL vs. Content Negotiation

  • April 14, 2025

    Partitioned Steps with Spring Batch

    A complete guide to implementing parallel partitioned batch jobs with Spring Batch.

    Read more: Partitioned Steps with Spring Batch

  • January 27, 2025

    How to Use Spring Cloud AWS with LocalStack: Build and Test AWS Applications Locally

    Learn how to integrate Spring Cloud AWS with LocalStack to emulate AWS services like SQS, DynamoDB, and Parameter Store, enabling fast and cost-effective local development and testing.

    Read more: How to Use Spring Cloud AWS with LocalStack: Build and Test AWS Applications Locally

  • January 01, 2025

    Broker agnostic with Spring Cloud Stream

    Example of Kafka producer and consumer (also Reactive) with Spring Cloud Stream. Error handling with retry and DLQ.

    Read more: Broker agnostic with Spring Cloud Stream

  • February 09, 2024

    Spring Boot vs Spring Boot with GraalVM: Performance testing and considerations

    Migrating a classic Spring Boot app to a GraalVM native image. My experience.

    Read more: Spring Boot vs Spring Boot with GraalVM: Performance testing and considerations

  • December 26, 2023

    Virtual Threads vs WebFlux: who wins?

    Let's challenge these two approaches with load tests!

    Read more: Virtual Threads vs WebFlux: who wins?

  • December 02, 2023

    OpenID Connect, OAuth2 and authorization code with Spring Cloud Gateway and WSO2 Identity Server

    Centralized security with Spring, example of OAuth2 Client and Resource Server and session management with Hazelcast.

    Read more: OpenID Connect, OAuth2 and authorization code with Spring Cloud Gateway and WSO2 Identity Server

  • May 15, 2023

    Securing your REST APIs with Spring Security and JWT

    How to integrate JWT access token and refresh token with Spring Security.

    Read more: Securing your REST APIs with Spring Security and JWT

  • May 14, 2023

    Integration tests for DynamoDB with Spring Boot, Testcontainers, and Localstack

    Testing DynamoDB with a LocalStack container shared between test classes.

    Read more: Integration tests for DynamoDB with Spring Boot, Testcontainers, and Localstack

  • January 30, 2023

    Retryable RestTemplate with RetryTemplate and centralized retry configuration

    Centralized Retry configuration with Policy on HTTP statuses in response.

    Read more: Retryable RestTemplate with RetryTemplate and centralized retry configuration

  • December 26, 2022

    Switching from Java 11 to Java 17

    Which new features to exploit.

    Read more: Switching from Java 11 to Java 17

  • October 01, 2022

    Web Service REST with Spring WebFlux and Reactive Mongo

    WebFlux with functional (RouterFunction) and traditional (annotation based) endpoints.

    Read more: Web Service REST with Spring WebFlux and Reactive Mongo

  • August 02, 2022

    Kubernetes' Pod object

    What is a Pod and how to create it.

    Read more: Kubernetes' Pod object

  • July 26, 2022

    Introduction to Kubernetes

    What is Kubernetes and installing a Cluster via Kind.

    Read more: Introduction to Kubernetes

  • May 17, 2022

    Centralized management of multiple containers with Docker Compose

    Docker Compose example for a Java app with Postgres database.

    Read more: Centralized management of multiple containers with Docker Compose

  • March 07, 2022

    Integration of WSO2 API Manager with WSO2 Identity Server

    WSO2IS as Key Manager in WSO2AM.

    Read more: Integration of WSO2 API Manager with WSO2 Identity Server

  • January 17, 2022

    Communication between containers: networking in Docker

    How to expose and isolate containers.

    Read more: Communication between containers: networking in Docker

  • December 27, 2021

    Persistence in Docker containers: volumes and bind mounts

    How to make the filesystem of a Docker container persistent.

    Read more: Persistence in Docker containers: volumes and bind mounts

  • October 25, 2021

    Build and export custom images: docker commit, docker build and docker save

    Example of Dockerfile to create a Docker image of a Java app.

    Read more: Build and export custom images: docker commit, docker build and docker save

  • September 28, 2021

    Get Started with Docker

    What are containers and basic operations with Docker.

    Read more: Get Started with Docker

  • May 14, 2021

    Introduction to Spring and Dependency Injection

    How to declare a bean, types and DI considerations.

    Read more: Introduction to Spring and Dependency Injection

  • March 25, 2021

    Singleton Pattern

    Singleton Pattern, how to make it Thread-safe, how to handle possible subclasses.

    Read more: Singleton Pattern

  • January 11, 2021

    JPA Fetch and N+1 SELECT problem

    LAZY Fetch vs EAGER Fetch and possible optimizations.

    Read more: JPA Fetch and N+1 SELECT problem

  • December 14, 2020

    EntityManager: Application managed and Container managed

    Persistence Context, Persistence Unit, EntityManager from container and from application.

    Read more: EntityManager: Application managed and Container managed

  • December 01, 2020

    Introduction to JPA and relationship mapping

    OneToMany, OneToOne and ManyToMany in JPA.

    Read more: Introduction to JPA and relationship mapping

  • November 16, 2020

    Level 3 REST services and paging with Spring HATEOAS

    Let's see how to implement a level 3 Restful Web Service of the Richardson Maturity Model.

    Read more: Level 3 REST services and paging with Spring HATEOAS

  • November 08, 2020

    Richardson Maturity Model and REST levels

    What is the Richardson Maturity Model and HATEOAS.

    Read more: Richardson Maturity Model and REST levels

  • October 17, 2020

    Spring Monitoring with Spring Actuator and Spring Boot Admin

    Let's see how to monitor a Spring Boot app in a simple way.

    Read more: Spring Monitoring with Spring Actuator and Spring Boot Admin

  • October 11, 2020

    Integration Test with TDD, Spring Boot, JUnit 5 and H2

    Example of integration test with Spring Boot, JUnit 5 and H2 as in-memory database.

    Read more: Integration Test with TDD, Spring Boot, JUnit 5 and H2

  • October 03, 2020

    TDD and Unit Test with JUnit 5 and Mockito

    Example of unit test with JUnit 5 and Mockito using test drive development.

    Read more: TDD and Unit Test with JUnit 5 and Mockito

  • September 26, 2020

    Manage multiple instances of Spring Batch with Shedlock

    How to manage easily a Spring Batch app on several nodes with the Shedlock library.

    Read more: Manage multiple instances of Spring Batch with Shedlock

  • September 10, 2020

    Lesson 3: The selection (if-else)

    The selection (if-else).

    Read more: Lesson 3: The selection (if-else)

  • September 03, 2020

    Lesson 2: First program in Java

    A first simple (procedural) program in Java.

    Read more: Lesson 2: First program in Java

  • August 15, 2020

    Lesson 1: Introduction to Java and tools used

    Introduction of Java language.

    Read more: Lesson 1: Introduction to Java and tools used

  • August 14, 2020

    Lesson 0: Introduction to programming

    A brief Intro on what programming is.

    Read more: Lesson 0: Introduction to programming

  • August 09, 2020

    REST Web Service + CRUD in 5 minutes with Spring Boot and Spring Data REST

    An easy and fast way for develop an entry level backend.

    Read more: REST Web Service + CRUD in 5 minutes with Spring Boot and Spring Data REST

If you appreciate my articles, you can make me a donation of your choice. Thank you :)

Donate with PayPal

© 2026 Vincenzo Racca

LinkedIn (opens in a new tab)GitHub (opens in a new tab)Instagram (opens in a new tab)