Java Bean Validation

김정현·2025년 2월 20일
0

Spring Boot

목록 보기
6/7

Java Bean Validation API(또는 Jakarta Validation)

Spring Boot의 DTO(데이터 전송 객체)나 엔티티 클래스에서 입력값을 검증할 때 주로 사용된다.

@RestController
@RequestMapping("/users")
public class UserController {
    
    @PostMapping("/register")
    public ResponseEntity<String> registerUser(@Valid @RequestBody UserRequest request) {
        return ResponseEntity.ok("회원가입 성공!");
    }
}

위 예시처럼 @Vaild 애노테이션을 통해 검증한다.

그 후 엔티티나 DTO에서

@Entity
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @NotBlank
    private String name;

    @Size(min = 6, max = 20)
    private String password;

    @Min(18)
    private int age;
}

위와 같이 DB에 저장할때 유효하지 않은 값을 예외처리할 수 있다.

기본적인 애노테이션만 알아보자면,
문자열
✔️ @NotBlank → 빈 값, 공백 문자열 불가
✔️ @Size(min=, max=) → 문자열 길이 제한

숫자
✔️ @Min(value) → 최소값 지정
✔️ @Max(value) → 최대값 지정

컬렉션 & 객체
✔️ @NotEmpty → 리스트나 배열이 비어있으면 안 됨
✔️ @Valid → 내부 객체 필드까지 검증

등이있다.

0개의 댓글

관련 채용 정보