알버트의 개발하는 블로그
자바 커스텀 어노테이션에 대해서 (custom annotation) 본문
1) 커스텀 어노테이션을 이용하는 방법
어노테이션을 정의한다.
어노테이션을 클래스에서 사용한다. (타겟에 적용)
어노테이션을 이용하는 코드를 수행한다.
2) 어노테이션 생성 예제
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME) // 런타임중에도 유효한 어노테이션임을 기술
public @interface Count100 { // 어노테이션은 @interface 인터페이스명으로 정의
}
// 커스텀 어노테이션을 메소드에 적용
public class MyHello {
@Count100
public void hello(){
System.out.println("hello");
}
}
// 어노테이션이 적용된 부분인지 체크하여 코드내에서 사용
import java.lang.reflect.Method;
public class MyHelloExam {
public static void main(String[] args) {
MyHello hello = new MyHello();
try{
Method method = hello.getClass().getDeclaredMethod("hello");
if(method.isAnnotationPresent(Count100.class)){
for(int i = 0; i < 100; i++){
hello.hello();
}
}else{
hello.hello();
}
}catch(Exception ex){
ex.printStackTrace();
}
}
}
이런식으로 커스템 어노테이션을 만들어
클래스안에서 타겟에 적용하고,
호출부에서 어노테이션이 존재하는지를 확인하면서 흐름을 제어해갈수 있습니다.
'웹개발 > Spring' 카테고리의 다른 글
[Spring] 스프링 부트를 이용한 웹소켓 채팅프로그램 (0) | 2022.03.16 |
---|---|
[Spring] 웹소켓이란?? (0) | 2022.03.16 |
자바 어노테이션에 대해서 (annotation) (0) | 2022.03.04 |
[Spring] 스프링(Spring) 이란? (0) | 2022.01.28 |
[Spring] MVC패턴, MVC모델이란? (0) | 2022.01.20 |