[인프런워밍업클럽][BE] 과제 1 | Annotation
[질문]어노테이션을 사용하는 이유 (효과) 는 무엇일까?나만의 어노테이션은 어떻게 만들 수 있을까?1. Annotation1.1 Annotation어노테이션(Annotation) 이란?프로그래밍 언어에는 영향을 미치지 않으면서 프로그램에게소스코드 안에 다른 프로그램을 위한 정보를 미리 약속된 형식으로 포함시키기 위해 추가이 속성/클래스의 용도/역할/기능을 부여컴파일러에게 코드 문법 에러를 체크할 수 있도록 정보 제 어노테이션(Annotation)의 사용 이유구성/설정 정보를 외부 XML 설정 파일에 명시하는 기존 자바 웹 애플리케이션 구조 하에서는 규모가 커지거나 코드의 수정이 이뤄짐에 따라 수 많은 재 설정이 필요했음어노테이션은 어노테이션이 붙은 클래스/함수 등의 메타데이터를 간단한 @어노테이션명 형식으로 명시함으로써, 해당 기능을 간단하게 설정하여 수행토록 함 어노테이션의 특징간결함 : 비즈니스 로직에 영향을 주지 않으면서 실행 흐름을 변경시킬 수 있는 코딩이 가능해클래스, 메서드, 변수, 인자에 추가 가능 대표적인 어노테이션@Controller@Override 1.2 Custom Annotation사용자가 직접 정의하여 사용하는 어노테이션프레임워크나 API 등을 만들어 사용할 때 주로 사용(1) Custom Annotation 정의하기@interface 를 통해 해당 클래스를 어노테이션으로 정의어노테이션 내부에 값을 가지거나 설정할 수 있음(참고한 블로그에서는 다른 어노테이션이 더 붙으나 아직 이해하지 못해서 아래 코드에는 넣지 않음)import java.lang.annotation.*; public @interface CustomApplication{ String bookName(); int price() default 10000; //값 설정 시 default 형태로 설정해야 함 } (2) Custom Annotation 사용하기import java.lang.annotation.*; @CustomAnnotation(bookName = "일리아스") class BookInfo { } 참고자료https://ittrue.tistory.com/158https://data-study-clip.tistory.com/130https://kkminseok.github.io/posts/2023-01-26-Annotation_Ad01/https://seongeun-it.tistory.com/142https://ggop-n.tistory.com/88https://advenoh.tistory.com/21