JAVA/JAVA 관련

자바 Annotation 만들기

반응형

자바에서 Annotation은 별도의 properties파일이나 xml같은 설정파일에 작성하는 부가적인 정보를 어노테이션으로 간편하게 설정할 수 있다.


형태


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Target(ElementType.TYPE)
 
@Retention(RetentionPolicy.RUNTIME)
 
@Documented
 
public @interface Anno {
 
 public String defaultVal()  default “OK”;
 
 public String val();
 
}
 
 
cs



Target은 어노테이션의 적용 대상을 선정하고, Retension은 이 어노테이션의 정보가 어디 까지 유지되는지 설정한다.


@Target - Constructor, Field, Enum, Local Variable, Method, Package, Parameter, Type(Class)
@Retention - Source, Class, Runtime
@Documented - 어노테이션을 javadoc에 포함한다.
@Inherited - 어노테이션 상속을 가능케 한다.  

구현된 어노테이션 사용은 다음과 같이 사용한다.


 


1
2
3
4
5
6
7
8
9
10
@Anno(val = "Annotation!!"
public class Member { 
.....
}  
 
정의한 어노테이션에 대한 접근은 다음과 같다.
 
Member member = new Member(); 
System.out.println(member.getClass().getAnnotation(Anno.class).val()); 
System.out.println(member.getClass().getAnnotation(Anno.class).defaultVal());  
cs



참고 사이트 : http://blog.naver.com/cracker542/40159657935

반응형