Escolha uma Página

Validando sub-classes com Spring Validation

Escrito por Alisson

agosto 22, 2023

Primeiramente para podermos utilizar o @Valid do Spring, precisamos adicionar a dependência no POM do projeto.

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

Com a dependência adicionada podemos agora utilizar o @Valid nos nossos controllers.

Nos códigos abaixo vou mostrar um controller básico e uma classe que vamos utilizar a validação.

@RestController
@RequestMapping(value = "v1", produces = MediaType.APPLICATION_JSON_VALUE)
public class TicketController {

    .....


  @PostMapping("/events")  
  public ResponseEntity<HttpStatus> saveEvents(
      @Valid @RequestBody @JsonProperty("events") final EventsRequestJson eventsJson) {

    ...
  }

}
public class EventsRequestJson {
  @NotEmpty @NotNull @Valid private List<EventJson> events;
}
public class EventJson {
  @NotEmpty @NotNull private String event;

  private String value;
}

Como visto nos códigos acima, quando precisamos validar uma sub-classe, precisamos adicionar o @Valid também na assinatura dela.

Você pode gostar…

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *