Я должен проверить Rest API dto для электронной почты и номера.Для этого я использую пользовательский шаблон для проверки значения внутри dto.Использование @Pattern () с регулярным выражением работает правильно.Однако использование другой аннотации, помеченной @Pattern, не проверяет мой DTO.
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE })
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Pattern(regexp = "[0-9]{7,14}", message = "Message should be digit")
public @interface IsNumber {
}
public class MyDTO {
@IsNumber
private String number;
}
@PostMapping(...)
public GenericResponse addNumber(@Valid @RequestBody MyDTO myDto) {}
Конечная точка API позволяет DTO проходить через мой сервис и получать к нему доступ, когда в действительности проверка должна была заблокировать запрос