Annotation

14
Java JDK Stack Serize Jin

Transcript of Annotation

Page 1: Annotation

Java JDK Stack Serize

Jin

Page 2: Annotation

Target Audience

@ 을 알고 싶은 사람

@외우지말고 이해를…

Page 3: Annotation

Annotation이란?

메타데이터

어노테이션타입의 인스턴스이며, 애플리케이션 요소와

연관되어 있는 메타데이터

annotation Interface

Page 4: Annotation

Annotation 작성형식

접근제한자 심볼 예약어 이름 몸체

Page 5: Annotation

Annotation LifeCycle

@Retention -class: 기본값 클래스파일에 기록되고, jvm에 로드되지 않음

-runtime: 클래스파일에 기록되고, jvm에 의해 로드됨

-source: 컴파일 시에 사용되고 무시됨

Page 6: Annotation

적용대상

Target Type

Field

Method

Parameter

constructor

Local_variable

Page 7: Annotation

메소드에 적용되고 런타임시에 기록되어 Reflection Api를 통해 Access 할 수 있도록 설정

Annotation의 선언

Page 8: Annotation

Annotation의 적용

Page 9: Annotation

Annotation참조

1. class 로드 2. 메소드 로드 3. Annotation유무 확인 4. Annotation 값 출력

Page 10: Annotation

기존 Annotation 분석

Page 11: Annotation

흔한 spring @AutoWired

<bean class=“org.springframework.beans.factory.annotation.RequireAnnotationBeanPostprocess”/>

<context:annotation-config/>

생성자, 필드, setter 메소드 등에서

의존성 주입하는 Annotation

Page 12: Annotation

생성자, 필드, setter 메소드 등에서

의존성 주입하는 Annotation

Target