삽질 피하기

[삽질 피하기] Validation 처리

ozofweird 2021. 4. 21. 15:51

1. 결과 반환 처리

[참고] 삽질 피하기 - 결과 반환 처리

 

 

 

2. Validation 처리

1) build.gradle

implementation 'org.springframework.boot:spring-boot-starter-validation'

2) 어노테이션

어노테이션
@NotBlank(message = "이메일은 필수 항목 입니다.")
@Email(message = "이메일 형식에 맞게 입력해주세요.")
@Size(min = 4, message = "비밀번호는 4자 이상 입력해야합니다.")
@Min, @Max 어노테이션의 경우 숫자의 값에 해당할 때 사용
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Data
public class UserInput {

    @Email(message = "이메일 형식에 맞게 입력해주세요.")
    @NotBlank(message = "이메일은 필수 항목 입니다.")
    private String email;

    @NotBlank(message = "이름은 필수 항목 입니다.")
    private String name;

    @Size(min = 4, message = "비밀번호는 4자 이상 입력해야합니다.")
    @NotBlank(message = "비밀번호는 필수 항목입니다.")
    private String password;

    @Size(max = 20, message = "연락처는 최대 20자까지 입력해야 합니다.")
    @NotBlank(message = "연락처는 필수 항목입니다.")
    private String phone;

}
​
public class ApiUserController {
    
    ...
    
    @PostMapping("/api/user")
    public ResponseEntity<?> addUser(@RequestBody @Valid UserInput userInput, Errors errors) {

        if(errors.hasErrors()) {
            return new ResponseResult.fail("입력값이 정확하지 않습니다.", ResponseError.of(errors.getAllErrors()));
        }
        
        ...

        return ResponseResult.success(result);
    }
}

 

728x90