@Valid 는 자바 표준 스펙이고 @Validated 는 스프링에서 제공하는 어노테이션이다. @Validated 를 통해 그룹 유효성 검사나 Controller 가 아닌 다른 계층에서 유효성 검증 가능 @Valid 는 MethodArgumentNotValidExcep
사용자 입력의 유효성을 보다 세부적으로 검증해야할 때, 커스텀 어노테이션을 이용하여 예외 검증 로직을 구성할 수 있다.이 때, hibernate에서 제공하는 @Constraint 를 사용할 수 있다.어노테이션의 가장 큰 이점은 간결함이다.로직 흐름에 대한 컨텍스트가 응
Target : ANNOTATION_TYPE, METHOD, TYPEname : 태그의 이름description : 태그에 대한 설명Tag에 설정된 name 이 같은 것끼리 하나의 api 그룹으로 묶는다. Controller나 Controller의 메서드 영역에 설정한
Swagger는 API를 문서화하는 데 사용되는 오픈 소스 프레임워크로, API 문서화를 자동화하여 개발 생산성을 향상시킬 수 있다. API를 엑셀, 가이드 문서 등을 통해 관리하는 방법은 주기적인 업데이트가 필요하기 때문에 관리가 쉽지 않고 별도의 시간이 소요된다.
이 포스트에서 다루고자 하는 주요한 내용에 관련도니 코드외 나머지 코드는 분량상 생략하였습니다. 양해바랍니다.기존에 리뷰 데이터를 저장하는 API에서는 S3를 이용한 멀티미디어 파일을 아직 다루지 않아 리뷰 이미지 데이터를 저장하는 로직을 포함하고 있지 않았다. 따라서
특정 유저가 서버에 어떤 데이터의 변경을 요청을 하여 이 작업을 서버에 반영되면 그 작업과 관련된 유저들에게 해당 내역을 고지해야 한다고 가정해보자. 이러한 알림 기능은 어떤 형태로 구현할 수 있을까?웹서비스에서 사용하는 HTTP의 특징 중 하나는 비연결성이다. 클라이
알림 기능을 구현하기 위해 SSE(Server Sent Event)를 공부하던 와중 스프링에서는 이벤트라는 개념을 다루기 위해 어떤 지원하는 기능이 있는 지 궁금하여 찾아보게 되었다. 현재 알림 발행 요청을 처리하는 NotificationController 는 Notf
@Email 은 jakarta.validation.constraints 패키지에 속한 어노테이션으로 요청 데이터가 이메일 형식을 준수하는 지 검증하는 데 활용될 수 있다.하지만 @Email 어노테이션을 기본 속성으로 사용하게 되면 우리가 보편적으로 생각하는 mj3242
스프링에서 @GetMapping 이용하여 API 로직을 구성할 때 쿼리 스트링에 포함되는 파라미터들의 경우 위와 같이 이름을 기반으로 매칭하여 처리할 수 있다. 사실 기본적으로 @GetMapping 을 사용하면 파라미터들을 쿼리 스트링에서 탐색하기 때문에 위 예시 코드