본문 바로가기
* Web/[Back] ㄴSpring(Boot)

[Spring Boot] 스프링 부트 : 어노테이션(Annotation)란 무엇이고 왜 사용하며 어떻게 표현할까?

by codinguser 2021. 3. 23.

어노테이션(Annotation) 사전적 의미 : 주석 이라는 뜻이다.

일상 생활에서 책을 보면 "주석"표기가 되어있는걸 볼 수 있다.

또한 프로그래밍상에서 알고 있는 주석이라고는 //, /* 전부이다.

 

 

 

그렇다면 어노테이션(Annotation)이란 무엇일까?


쉽게 말하면, 메타 데이터(Metadata)이다. 즉 데이터에 대한 데이터이다. 컴파일 과정에서 방대하고 긴 묶음의 함수들을 간단히 메타 데이터로 표기 함으로써 컴파일 과정에서 어떻게 처리할 것인지를 알려주는 정보이다.

 

"@"로 표기가 이루어지고 있다.

 

가장 간단한 예시의 경우는 @Override의 경우인데, 메소드 오버라이드가 된 것임을 컴파일에게 알려주어서, 컴파일러가 알아서 오버라이드를 검사를 해준다. 만약 오버라이드가 안됬다면 컴파일러는 에러를 발생 시킬것이다.

 

 

이렇듯, 컴파일러에게 코드 문법 에러를 체크하도록 데이터에 대한 데이터를 제공 해준다. 뿐만 아니라 빌드 시 자동으로 XML 파일 및 Jar 압축파일을 자동으로 생성 할 수 있도록 도와준다. 

댓글