1) Gostaria de saber se é possível reaproveitar as Beans Validations para não precisar repetir o mesmo pattern direto em todo Dto que necessitar de validações.
Por exemplo, assim é como está hoje:
public record MedicoDto(
@NotBlank String nome,
@NotBlank @Email String email,
@NotBlank @Pattern(regexp = "\\d{8,13}") String telefone,
@NotBlank @Pattern(regexp = "\\d{4,6}") String crm,
@NotNull Especialidade especialidade,
@NotNull @Valid EnderecoDto endereco) {
}
public record MedicoAtualizarDto(
@NotNull Long id,
String nome,
@Pattern(regexp = "\\d{8,13}") String telefone,
@Valid EnderecoDto endereco) {
}
Repare que o Pattern para o campo telefone se repete em ambos os Dtos. Logo, seria possível criar um template para esses Patterns recorrentes em um arquivo properties ou algo do tipo?
Algo como:
public record MedicoAtualizarDto(
@Pattern(template = "telefone") String telefone,
@Pattern(template = "crm") String crm,
}
2) Ou ainda, faria sentido adicionar as validações na própria Entity? Assim, não seria necessário ficar repetindo as validações que serão comuns para todos os Dtos