티스토리 뷰
반응형
@Qualifier을 사용하여 조건을 추가했을 때 문자열의 오타를 잡아주지 못하기 때문에 의도했던 대로 적용이 되지 않을 수도 있다.
이를 위해서 따로 annotation을 만드는 방법이 있다.
1. Annotation 클래스를 생성한다
2. 클래스를 작성한다
@Target({ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.TYPE, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
@Qualifier("mainDiscountPolicy")
public @interface MainDiscountPolicy {
}
@Target ~ @Documented 어노테이션은 직접 @Qualifier 클래스에서 가져왔다.
생성한 어노테이션 클래스에 @Qualifier을 붙이고 안에 이름을 지정한다.
이렇게 하면 어노테이션이 완성된다.
MainDiscountPolicy가 @Qualifer을 상속을 하는 것 같은 모양새인데, 원래 어노테이션은 상속을 하지 못한다. 이런 기능은 스프링에서 지원해 주는 기능이다.
@Qualifier이 들어갈 대신에 @MainDiscountPolicy를 붙여 @Qualifier을 적용하는 효과를 낼 수 있다.
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- java
- hashcode
- 네이버 2022 공채
- python3
- Kotlin
- 1차 인터뷰
- github
- solidity
- downTo
- postman tests
- DGS Framework
- Python
- pm.expect
- string
- postman
- 확장 함수
- mysql
- Basic Type
- 2차 인터뷰
- Squash and merge
- 코딩테스트
- Kotlin In Action
- 코틀린
- go 특징
- postman collection
- 주생성자
- pm.test
- squash merge
- git
- graphql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함