위로 아래

어노테이션

어노테이션(@, annotation)

  1. 자바 코드에 @를 이용해 주석처럼 달아서 특수한 의미를 부여한다.
  2. 코드가 깔끔해지고 재사용이 가능해진다.

 

용도

  1. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공한다.
  2. 소프트웨어 개발 툴이 빌드할 때 코드를 자동으로 생성할 수 있도록 정보를 제공한다.
  3. 실행 시(런타임 시) 특정 기능을 실행하도록 정보를 제공한다.

 

사용 순서

  1. 어노테이션 정의
  2. 클래스에 어노테이션 배치
  3. 코드가 실행되는 중에 Reflection을 이용하여 추가 정보를 획득하여 기능 실시

 

Reflection

  1. 프로그램 실행 중에 자신의 구조와 동작을 검사하고 조사하고 수정하는 것
  2. 컴파일 타임에 인터페이스, 필드, 메소드의 이름을 알지 못해도 실행 중에 클래스, 인터페이스, 

 

 

 

어노테이션 종류

@Controller : Spring MVC에서 Controller로 사용되는 클래스 선언을 단순화 시켜주는 어노테이션.

@RestController : return 값을 바로 출력

@Service : 비즈니스 로직이 들어가는 Service로 사용되는 클래스임을 명시하는 어노테이션

@Repository : DB 연동 작업을 하는 DAO에 특화된 어노테이션. 

@Mapper : 

@RequestMapping : 클라이언트에게 요청받는 주소를 클래스와 연결시켜주는 어노테이션 (디폴트 : Get 방식)

@Autowired : 타입이 일치하는 객체를 자동으로 주입해준다. (의존성 자동 주입 어노테이션)

 

 

https://melonicedlatte.com/2021/07/18/182600.html

 

스프링(Spring)에서 자주 사용하는 Annotation 개념 및 예제 정리 - Easy is Perfect

 

melonicedlatte.com

 

https://velog.io/@gillog/Spring-Annotation-%EC%A0%95%EB%A6%AC

 

[Spring] Annotation 정리

Annotation(@)은 사전적 의미로는 주석이라는 뜻이다. 자바에서 사용될 때의 Annotation은 코드 사이에 주석처럼 쓰여서 특별한 의미, 기능을 수행하도록 하는 기술이다.

velog.io