-
에노테이션 직접 만들기spring/스프링 핵심 원리 강의 내용 정리 2023. 12. 11. 17:21
@Qualifier("mainDiscountPolicy") 이렇게 문자를 적으면 컴파일시 타입 체크가 안된다
다음과 같은 에노테이션을 만들어서 문제를 해결할 수 있다코드로 확인해 보자
어노테이션을 만들고,
위에 세개를 복붙하여 붙혀 넣는다 (shift + shift 로 검색하여 이동)
그리고 아래와 같이 @Qualifier 에 이름을 붙혀준다
@MainDiscountPolicy를 사용할 때 위의 기능들이 다 동작 한다
이전글에서 @Qualifier 를 사용했을 때를 기억해 보자
이런식으로 이름을 매겼었다
만약 오타가 나거나 했다면 동작은 하지만, 실행시키면 오류가 난다
컴파일시 오류를 잡을 수 없다는 것은 꽤나 까다로운 문제가 될 수 있다는 것이다
이거를 우리가 만든 어노테이션으로 해결하자
이제 찾는 쪽에서도 @Qualifier 를 사용했을 때 처럼 어노테이션을 달아준다
언뜻보면 효과는 같아 보이지만, 관리적인 측면에서 효과를 느낄 수 있다고 한다
에노테이션에는 상속이라는 개념이 없다
이렇게 여러 에노테이션을 모아서 사용하는 기능은 스프링이 지원해주는 기능이다
@Qualifier 뿐만 아니라 다른 에노테이션들도 함께 조합해서 사용할 수 있다
단적으로 @Autowired 도 재정의 할 수 있다
물론 스프링이 제공하는 기능을 뚜렷한 목적 없이 무분별하게 재정의 하는 것은 유지보수에 더 혼란만 가중할 수 있다'spring > 스프링 핵심 원리 강의 내용 정리' 카테고리의 다른 글
자동, 수동 올바른 실무 운영 기준 (0) 2023.12.11 조회한 빈이 모두 필요할 때, List, Map (0) 2023.12.11 @Autowired 필드 명, @Qualifier, @Primary (0) 2023.12.11 조회 빈이 2개 이상 - 문제 (0) 2023.12.11 롬복과 최신 트렌드 (0) 2023.12.11