[SpringBoot] @어노테이션 정리 :: 매운코딩
728x90
300x250

그냥 공부하다가 마주치는 어노테이션들 안까먹을겸 뒤죽박죽 정리

 

 

@RequiredArgsConstructor

: 클래스 내에 final 붙은 변수들 생성자 파라미터에 포함시켜줌

 

@NoArgsConstructor

: Lombok의 어노테이션으로 기본생성자 자동 추가

 

@GeneratatedValue

: DB PK의 생성 규칙 나타냄

 

@Entity

: 테이블과 링크될 객체 클래스로 명시

 

@Builder

: 해당 클래스의 빌더 패턴 클래스를 생성

생성자 상단 선언시 생성자에 포함된 필드만 빌더에 포함

* 빌더패턴은 생성자처럼 값을 주입하는 역할은 같지만 기본 생성자보다 어느 필드에 어떤 값을 채워야할지 명확하게 인지하고 채우기 좋다. ( ex. book.builder().a(a).b(b).build(); )

 

@WebMvcTest

: Web에만 집중할 수 있는 어노테이션. (@Service, @Component, @Repository등 사용불가능)

MockMvc에 관한 설정을 자동으로 수행해주는 어노테이션입니다.

 

 

@MappedSuperclass

: JPA Entity들이 이 어노테이션이 붙어있는 클래스를 상속할경우 그 클래스의 내용들도 컬럼으로 인식하게 한다.

단순 상속받는 엔티티에게 매핑정보만 상속해주는 것

blog.jiniworld.me/56

 

@EntityListeners(AuditingEntityListener.class)

: 이 어노테이션이 붙어있는 클래스에 JPA Aduiting 기능 추가

 

@CreatedDate 

: Entity 생성될때 시간 자동 저장

 

@LastModifiedDate

: Entity의 값이 변경될때 시간 자동 저장

 

@EnableJpaAuditing

: 해당 프로젝트에 JPA Auditing 기능 활성화

 

@EnableWebSecurity

: 스프링 시큐리티 설정 활성화

728x90

+ Recent posts