Я хочу создать свои собственные сообщения проверки с проверкой Spring Boot/MVC.
Я обнаружил, что следующая установка работает:
public class RegisterCredentials {
@NotEmpty
@NotNull
@Size(min=3, max=15)
private String username;
...
}
сообщения.свойства:
NotEmpty.registerCredentials.username = Username field cannot be empty.
NotNull.registerCredentials.username = Username field cannot be empty.
Size.registerCredentials.username = Username length must be between 3 and 15 characters.
После этого я хотел заменить фиксированные значения min=3 и max=15 атрибутами. Я пробовал так, но это не сработало (работает в аннотации @Size(message="..")):
Size.registerCredentials.username = Username length must be between {min} and {max} characters.
Затем я обнаружил, что следующий код работает..:
Size.registerCredentials.username = Username length must be between {1} and {2} characters.
Ну... почти, потому что выдает следующее сообщение:
Username length must be between 15 and 3 characters.
Замена порядка этих {1} и {2} решает проблему, однако при дальнейшем анализе приводит к запутанному коду.
Есть ли решение этой проблемы с чистым кодом?
SpringValidatorAdapter
. Если расположить в алфавитном порядке, тоmax
будет{1}
, аmin
будет{2}
. - person Ryan Gustafson   schedule 31.10.2018