У меня есть конечная точка REST, которая принимает объект в теле запроса и параметр запроса. Когда параметр запроса передается, мне нужно проверить все атрибуты объекта, если нет, параметр принимает назначенное значение по умолчанию, и нужно проверить только 2 атрибута. Путь должен быть одинаковым для обоих случаев. Как этого добиться?
В настоящее время у меня есть проверка шаблона, длины и возможных значений для объектов, проверенных с помощью аннотаций.
----- Обновление класса -------
@ValidateParent(parent = "parent ", child= "child")
public class anClass{
@NotNull(groups = {FrstValidator.class, SndValidator.class})
@Pattern(regexp = "^[a-zA-Z]{3}$",
groups = {FrstValidator.class, SndValidator.class})
String str1;
@NotNull(groups = {FrstValidator.class, SndValidator.class})
@Pattern(regexp = "^[a-zA-Z]{3}$",
groups = {FrstValidator.class, SndValidator.class})
String str2;
@Pattern(regexp = "^[a-zA-Z]{10}$",
groups = SndValidator.class)
String child;
@Pattern(regexp = "^[a-zA-Z]{10}$",
groups = SndValidator.class)
String parent;
@Pattern(regexp = "^[a-zA-Z]{10}$",
groups = SndValidator.class)
String str3;
}
ValidateParent
проверяет, передается ли родительский элемент при передаче дочернего элемента в теле запроса.
@RequestBody
: все атрибуты, потому что параметр предоставлен, или только 2 - потому что он такой же, как по умолчанию? :) - person Alex Rudenko   schedule 17.10.2020