Spring/Anotation

어노테이션( @,Annotation )

doriver 2022. 12. 6. 11:45

어노테이션( @,Annotation )

소스코드에 메타데이터를 삽입하는 것
어노테이션이 붙은 코드는 어노테이션의 구현된 정보에 따라 연결되는 방향이 결정된다
전체 소스코드에서 비즈니스로직에는 영향을 주지는 않지만 해당 타겟의 연결 방법이나 소스코드의 구조를 변경할수 있다.

이 속성을 어떤 용도로 사용할까
이 클래스에게 어떤 역할을 줄까? 를 결정

@Target
어노테이션의 타겟을 지정, 어떤 대상을 위한 어노테이션인지를 설정
해당 어노테이션을 어디에(field, class, enum등) 붙일 것인지
field - FIELD
class, enum - TYPE

@Retention
어노테이션의 지속 기간
해당 어노테이션을 소스코드에서 단순 주석으로 사용할지, 컴파일시기까지 유지할지, 런타임까지 유지할지를 결정

 

@NoArgsConstructor
파라미터가 없는 기본 생성자를 생성해준다

@AllArgsConstructor
모든 필드 값을 파라미터로 받는 생성자를 만들어준다.