728x90
반응형
@RequestBody 옆(오른쪽, 왼쪽 상관 없음)에 @Valid 어노테이션을 쓴 뒤에 해당 DTO의 필드 위에 유효성 검증을 원하는 대상에 부합하는 annotation을 써줍니다.
사용법
자세한 사용법은 아래 글을 참고해주세요~
https://yundevnote.tistory.com/64
[Spring] Spring Boot에서의 validation check
Validation 올바르지 않은 데이터를 걸러내고 보안을 유지하기 위해 데이터 검증은 여러 계층에 걸쳐서 적용됩니다. Client의 데이터는 조작이 쉬울 뿐더러 모든 데이터가 정상적인 방식으로 들어오
yundevnote.tistory.com
@Getter
@RequiredArgsConstructor
public class UserRequestDto {
@NotEmpty(message = "이메일은 필수 입력값입니다.")
@Email
private String email;
@NotNull
private String password;
...
}
@PostMapping("/user/add")
public ResponseEntity<?> addUser(@RequestBody @Valid UserRequestDto userRequestDto) {
...
}
- @NotNull: 해당 값이 null이 아닌지 검증합니다
- @Null: null만 입력 가능합니다
- @NotEmpty: 해당 값이 null이 아니고, 빈 스트링("") 아닌지 검증합니다(" "은 허용됨)
- @NotBlank: 해당 값이 null이 아니고, 공백(""과 " " 모두 포함)이 아닌지 검증합니다
- @AssertTrue: 해당 값이 true인지 검증합니다
- @AssertFalse: 해당 값이 false인지 검증합니다
- @Size(min=,max=) : 해당 값이 주어진 값 사이에 해당하는지 검증합니다(String, Collection, Map, Array에도 적용 가능)
- @Min: 해당 값이 주어진 값보다 작지 않은지 검증합니다
- @Max: 해당 값이 주어진 값보다 크지 않은지 검증합니다
- @Pattern: 해당 값이 주어진 패턴과 일치하는지 검증합니다
- @Range: 범위 안의 값인지 검증합니다
- @Positive: 해당 값이 양수인지 검증합니다
- @PositiveOrZero: 양수와 0만 가능합니다
- @Negative: 음수만 가능합니다
- @NegativeOrZero: 음수와 0만 가능합니다
- @Email: 이메일 형식만 가능합니다
- @Digits(integer=, fraction = ): 대상 수가 지정된 정수와 소수 자리 수 보다 작은지 검증합니다
- @DecimalMax(value=): 지정된 값(실수) 이하인지 검증합니다
- @DecimalMin(value=): 지정된 값(실수) 이상인지 검증합니다
[참조]
728x90
반응형
'웹 프로그래밍 > Spring' 카테고리의 다른 글
[Spring] Bean Scope (0) | 2024.07.05 |
---|---|
[Spring] Spring Boot에서의 validation check (0) | 2022.03.15 |
[Spring] DTO의 @Builder, @RequestBody와 생성자 (0) | 2022.03.10 |
[Spring] Spring Validator BindingReuslt/Errors 사용 (0) | 2021.08.24 |
[Spring Security] #2 Spring Security 설정 (0) | 2021.06.01 |