앱에서 비밀번호 재설정을 구현하던 중 비밀번호 유효성 검사가 되지 않고 있다는 것을 깨달았습니다 ..
다시 확인해보니 기존에 회원가입 시 비밀번호 입력에도 유효성 검사가 되지 않았고, 회원가입을 구현할 때에 확인을 한 것 같았는데 다시 코드를 확인해보니 DTO도 문제가 없고 컨트롤러에도 @Valid가 적용되어 있음에도 유효성 검사가 되지 않았습니다 ..
패키지 import를 잘못한 건가 확인도 해봤지만 다 올바르게 되어 있었고, 해결 방법을 찾아보다 bulid.gradle에서
implementation 'org.hibernate.validator:hibernate-validator:6.0.13.Final'
를 제거하니 정상적으로 유효성 검사가 되었습니다.
Spring Boot는 spring-boot-starter-validation를 통해 자체적으로 호환 가능한 hibernate-validator 버전을 관리하는데, 현재 스프링부트와 맞지 않는 버전을 명시해서 유효성 검사가 되지 않았던 것이었습니다.
해당 의존성을 제거하면 스프링부트가 자체적으로 맞는 버전을 자동으로 가져다 쓰기 때문에 호환 버전이 사용되며 유효성 검사가 정상적으로 동작하게 된다고 합니다 !
따라서 build.gradle에 spring-boot-starter-validation 의존성만 명시하면 유효성 검사가 잘되는 것을 확인할 수 있습니다 !
implementation 'org.springframework.boot:spring-boot-starter-validation'
★ 앞으로 직접 의존성 추가 시 버전이 프로젝트와 호환되는지 확인할 것
'개발 | 프로젝트 > Java | Spring' 카테고리의 다른 글
[Spring boot] @Transactional 이란? (0) | 2025.04.08 |
---|---|
[Spring Boot] GlobalExceptionHandler 예외 처리 (0) | 2025.04.06 |
[Spring Security] UsernamePasswordAuthenticationFilter Authentication Flow (0) | 2025.03.21 |
[Spring] Spring Security CSS 적용 안되는 오류 (0) | 2025.02.27 |
[Spring] Spring Security (0) | 2025.02.26 |