Spring Boot

[Spring] 유효성 검사는 DTO에서 하는게 좋을까 Entity에서 하는게 좋을까? (feat. @NotBlank, @Size)

생선묵김치찌개 2023. 5. 24. 17:43

 

1) Entity에서 @NotBlank, @Size를 붙인경우 500 에러가 던져졌고
2) DTO에서 @NotBlank, @Size를 붙이고 컨트롤러에서 DTO 앞에 @Valid를 붙인 경우 400 에러가 던져졌다.

DTO에 어노테이션을 붙인 경우

 

내 생각에 데이터가 DTO - Service단 - Entity로 들어갈텐데 DTO단에서 잘못된 데이터를 쳐내는게 Service단에서 시간낭비 하지 않고 더 효율적으로 API 400 응답을 내려줄수 있을것 같다.