728x90
반응형
Controller 파라미터 필수값으로 표시하고, 처리하기
Controller에서 파라미터로 받아오는 값을 필수값으로 처리하고, 표시하고 싶다면
@NotNull과 @Schema(required=true, ...)를 사용하면 된다.
required = true는 @Schema 어노테이션의 속성이므로 Swagger의 문서상에서 프론트 엔드쪽에 보여질 때 required로 표시를 하는 옵션이고, 실제 @NotNull은 해당 값이 파라미터로 들어오지 않으면 에러를 반환한다. 만약 에러 메시지를 지정하고 싶다면 @NotNull(message = " ... " ) 속성을 사용하면 된다.
@NonNull, @NotEmpty, @NotBlank
NonNull은 데이터값이 Null이면 안된다. Null이면 에러를 반환한다.
NotEmpty는 데이터값이 Null, ""(빈 문자열)이면 안된다.
NotBlank는 데이터값이 Null, "", " "(공백) 이면 안된다.
@Valid 적용
@NotNull, @NotBlank와 같이 검증을 위한 어노테이션은 엄청 많다.
https://cchoimin.tistory.com/entry/Valid-%EC%84%B8%ED%8C%85-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95
@Max, @Min 등...
이런 것들을 적용하기 위해서는 파라미터의 객체 앞에 @Valid 어노테이션을 달아주어야만 한다.
( @Valid XxxPo )
728x90
반응형
'Programming-[Backend] > Spring' 카테고리의 다른 글
[TIL] DB save 테스트 Id값 증가, Auto Increment 값은 transaction에 포함되지 않음 (0) | 2021.05.02 |
---|---|
[TIL] Swagger 날짜 입력 : @DateTimeFormat- Controller의 파라미터 중 LocalDate 처리 (0) | 2021.05.01 |
[TIL] Controller 필드 중 LocalDate 처리하기, @DateTimeFormat, Swagger (0) | 2021.04.28 |
[TIL][에러] 스프링 Projections constructor, No constructor found for class (0) | 2021.04.27 |
[TIL][TDD] 스프링 TDD 개발 방법론 개요 (0) | 2021.04.22 |