Start here. This is the direct spoken answer to practice first.
Overview
A probe is a control signal to the platform, so its dependencies must match the action the platform takes when it fails.
Liveness answers whether this application instance is irrecoverably stuck and should be restarted. Readiness answers whether it should receive traffic now. Spring Boot exposes dedicated liveness and readiness health groups that can reflect application availability state. I keep liveness independent of external services, because a database outage should not restart every healthy application instance.