@EntityListeners 어노테이션은 JPA(Java Persistence API) 엔터티에서 엔터티 수명 주기 이벤트를 수신하는 리스너 클래스를 지정하는 데 사용된다. 주로 엔터티의 생성, 수정, 삭제 등과 같은 변경 사항을 모니터링하고 처리하기 위해 사용된다.
Optional은 자바의 java.util 패키지에서 제공되는 클래스로, 주로 값이 없을 수 있는 상황에서 null을 대신하여 사용하는데 도움을 주는 클래스입니다. Optional을 사용하면 코드에서 더 명시적으로 값의 존재 여부를 다룰 수 있으며, null로 인한 예
@Query(nativeQuery = true)는 Spring Data JPA에서 사용되는 어노테이션 중 하나로, 네이티브 SQL 쿼리를 실행하기 위해 사용됩니다. 이 어노테이션을 사용하면 JPA 쿼리 언어가 아닌 원시 SQL을 사용하여 데이터베이스에서 데이터를 조회하
@Lob는 JPA(Java Persistence API)에서 사용되는 어노테이션으로, Large Object 데이터를 나타내는 데 사용됩니다. Large Object 데이터는 긴 문자열, 이진 데이터 또는 바이너리 대량 데이터를 의미합니다. @Lob 어노테이션을 사용하
@JsonIgnoreProperties는 Jackson 라이브러리를 사용하여 JSON 직렬화 및 역직렬화를 수행할 때 특정 필드 또는 속성을 무시하도록 지정하는 데 사용되는 스프링 애노테이션입니다. 이 애노테이션은 특정 클래스나 엔터티의 일부 속성을 JSON 변환에서
@ControllerAdvice는 스프링 프레임워크에서 제공하는 어노테이션으로, 전역 컨트롤러에서 발생하는 예외를 처리하고 응답을 제어하기 위해 사용됩니다.주로 스프링 MVC 애플리케이션에서 예외 처리와 관련된 로직을 중앙 집중적으로 관리하고 재사용 가능한 방식으로 구
Interceptor(인터셉터)는 웹 애플리케이션에서 요청과 응답을 가로채어 처리하는 미들웨어(Middleware) 컴포넌트입니다. 주로 스프링 MVC와 같은 웹 프레임워크에서 사용되며, 다음과 같은 목적으로 사용됩니다:요청/응답 전/후 처리: Interceptor는