[java] 애노테이션의 활용 사례 소개
자바에서 애노테이션은 소스 코드에 메타데이터를 추가하여 컴파일러에 정보를 전달하거나 런타임에 특정 작업을 수행하는 데 사용됩니다. 이번 글에서는 애노테이션의 다양한 활용 사례에 대해 알아보겠습니다.
1. 애노테이션을 통한 컴파일 타임 체크
애노테이션을 사용하여 컴파일러가 코드에 대해 추가적인 검사를 수행하도록 유도할 수 있습니다. 예를 들어, @Deprecated
애노테이션은 해당 메서드가 더 이상 사용되지 않음을 나타내며, 컴파일러는 사용자에게 경고 메시지를 통해 이를 알립니다.
@Deprecated
public void oldMethod() {
// 내용 생략
}
2. 애노테이션을 활용한 런타임 처리
애노테이션을 사용하여 런타임에 특정 작업을 수행할 수 있습니다. 예를 들어, 스프링 프레임워크에서 @Component
애노테이션을 사용하여 해당 클래스를 빈으로 등록하거나, @Transactional
애노테이션을 사용하여 트랜잭션을 처리합니다.
@Component
public class SampleComponent {
// 내용 생략
}
3. 애노테이션을 활용한 리플렉션
애노테이션을 통해 리플렉션을 활용할 수 있습니다. 리플렉션을 사용하면 런타임에 클래스의 구조를 분석하고, 필드, 메서드, 애노테이션 등에 접근할 수 있습니다.
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface CustomAnnotation {
String value();
}
public class MyClass {
@CustomAnnotation("Example")
public void myMethod() {
// 내용 생략
}
}
애노테이션을 효과적으로 활용하면 컴파일 타임과 런타임에서 추가적인 작업을 수행하거나 유연하게 코드를 처리할 수 있습니다.
이상으로 애노테이션의 활용 사례에 대해 알아보았습니다.
Reference: