These annotations are implemented under the hood by Hibernate Validator project.
The default messages coming from annotation values appear due to the Default Interpolator (the concept of Hibernate validator).
So the solution, I believe should consist of two steps:
Create a custom Message Interpolator in terms of spring Validator project. Take a loot here for details, they have an example of message interpolator that reads from some file system resource. At this point this has nothing to do with spring / spring boot yet.
Integrate the message interpolator that you've created during Step 1 with spring boot application.
For that your code should include something like this:
Validation.byDefaultProvider().configure().messageInterpolator(
new MyCustomMessageInterpolator(
Validation.byDefaultProvider().configure().getDefaultMessageInterpolator())
);
I've found a tutorial about such an integration here
This tutorial seems to not telling where exactly you should put this code, so I think you should try some listener that will listen to "ApplicationStarted" event or something