Spring, Java 어노테이션이란?

🚩Annotation


Annotation은 사전적 의미로 “주석” 이라는 뜻이다. 자바에서 코드사이에 주석처럼 쓰의며 특별한 의미, 기능을 수행하도록 하는 기술이다.
프로그램 실행 관점에서 보면 프로그램이 처리할 메인 데이터가 아니라 실행 과정에서 데이터를 어떻게 처리 할 것인지 알려주는 서브 데이터라고 볼 수 있는 것이다.

✨어노테이션의 장점


  • 데이터에 대한 유효성 검사조건을 어노테이션을 사용하여 Model 클래스에 직접 명시함으로써 해당 데이터들에 대한 유효 조건을 쉽게 파악할 수 있게되며, 코드의 양도 줄어든다.

🕹어노테이션의 기능


  1. 코드 문법 에러 체크
  2. 코드 자동 생성 정보 제공
  3. 런타임시 특정 기능을 실행하는 정보 제공

📄어노테이션의 종류


  • 표준 어노테이션: 자바가 기본적으로 제공해주는 어노테이션 ex) @Override
    • @Override : 선언한 메서드가 오버라이드 되었다는 것을 나타낸다.
    • @Deprecated: 해당 메서드가 더 이상 사용되지 않음을 표시한다.
    • @SuppressWarnings: 선언한 곳의 컴파일 경고를 무시하도록 한다.
  • 메타 어노테이션: 어노테이션을 위한 어노테이션
    • @Retention: 컴파일러가 어노테이션을 다루는 방법을 기술하며, 특정 시점까지 영향을 미치는지 결정한다.
    • @Target: 어노테이션이 적용할 위치를 선택한다.
    • @Documented: 해당 어노테이션을 javadoc에 포함시킨다.
    • @Inherited: 어노테이션의 상속을 가능하게 한다.
  • 사용자 정의 어노테이션: 사용자가 직접 정의하는 어노테이션
    • 아래와 같이 간단하게 정의 할 수 있다.
@interface 이름{
	타입 요소 이름(); // 어노테이션의 요소를 선언
	    ...
}

🔒어노테이션 규칙


  1. 요소의 타입은 기본형, String, enum, 어노테이션, Class만 허용된다.
  2. 괄호안에 매개변수를 선언할 수 없다.
  3. 예외를 선언할 수 없다.
  4. 요소의 타입을 매개변수로 정의할 수 없다.

좋은 웹페이지 즐겨찾기