spring boot(3)
-
[Spring] @Valid 와 @Validated 의 사용 방법
개요프로젝트를 진행을 하면서 Code Rabbit 이 프로젝트에서 지적을 해준 부분이 @Validated에 대해서 지적을 해주었다.이번 기회에 @Valid와 @Validated에 대해서 자세하게 비교를 해보고자 한다. @Valid와 @Validated의 단순 비교 어노테이션클래스 레벨 (@RestController 등)파라미터 레벨 (@RequestBody 등)@Validated(O) 동작함: 클래스 내 메소드의 개별 파라미터(@RequestParam 등) 검증 기능을 활성화시킴.(O) 동작함: DTO 검증 + 그룹 기능 사용 가능.@Valid(X) 동작 안 함: 아무런 효과 없음.(O) 동작함: DTO에 대한 기본 유효성 검사 수행 (그룹 기능 없음). 단순한 비교는 이러하다이제 예시를 보면서 사용 방..
2025.09.02 -
[Spring] @JsonCreator 와 @JsonProperty 을 사용해야하나?
개요프로젝트 중 RequestDto 에 @RequiredArgsConstructor 을 사용하고 있었다. Code Rabbit 이 Request DTO 문제를 지적을 하면서"Lombok의 @RequiredArgsConstructor로 만든 생성자는 Jackson(JSON 라이브러리)이 인식하지 못할 수 있으니, Jackson이 확실하게 알아볼 수 있도록 @JsonCreator와 @JsonProperty를 사용한 명시적인 생성자를 만들어야 합니다." 하지만 로컬 환경에서는 API 가 동작이 잘되었고, 실제 테스트 시 문제가 없었다. 재미니에게 물어보니"동작이 잘 되는데, 왜 이런 지적이 맞을까요?"이것이 가장 중요한 포인트입니다. 사용자님께서 "로컬에서 테스트해보니 잘 동작했다"고 생각하시는 것은 매우 자..
2025.08.28 -
[Redis] Redisson 설정 해보자.
개요최종 프로젝트를 진행을 하면서 동시성 제어를 맡게 되었다. 다른 락도 같이 공부를 할 것인데, 일단 기능을 만들어두고 공부를 해야겠다고 생각을 하여서 Redis부터 진행을 하게 되었다. 이번에 Redis 설정을 진행을 하면서 설정법에 대해서 알게 되어 정리를 남긴다. Redis 의존성 종류에 대해서 알아보자.implementation 'org.redisson:redisson:3.43.0'implementation 'org.redisson:redisson-spring-data-34:3.45.1'implementation 'org.springframework.boot:spring-boot-starter-data-redis' 이렇게 3가지가 있는 것을 확인을 하였다. 간단하게 정리를 하면가장 위에 있는 의..
2025.04.02