@Resource 활용 팁
스프링에서 @Autowired와 @Resource. 이 둘의 가장 큰 차이는 하나는 by-type이고, 하나는 by-name이라는 것. 주로 @Autowired를 사용해서 보통 다음과 같이 코딩합니다.
public class Post {
@Autowired private Cate cate;
…
}
그런데 만약에 Cate 타입이 두 종류라면.. MainCate, SubCate. 이렇게 나눴다고 치고 위의 코드를 실행하면 에러가 닙니다. NoSuchBean뭐시기 Exception이 나면서 해당 타입의 빈이 1개가 아니다. 라는 예외가 발생하요. 그럴 때 처방으로 보통..
public class Post {
@Autowired @Qulifier(“mainCate”)
private Cate maincate
…
}
이렇게 @Qulifier를 사용하곤 하는데.. 사실 저걸 @Resource로 바꾸면 굉장히 간단해집니다.
public class Post {
@Resource private Cate maincate
…
}
캬~~ 간단하죠. @Resource 애노테이션을 사용하려면 jsr250-api.jar 파일을 추가해주면 됩니다. 메이븐을 사용하고 있다면
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>jsr250-api</artifactId>
<version>1.0</version>
</dependency>
<groupId>javax.annotation</groupId>
<artifactId>jsr250-api</artifactId>
<version>1.0</version>
</dependency>
이렇게 추가해주면 끝..
출처 - http://whiteship.me/?p=11012#comments
'Framework & Platform > Spring' 카테고리의 다른 글
spring - @PostConstruct, @PreDestroy (0) | 2012.11.09 |
---|---|
Spring MVC Framework Tutorial (0) | 2012.11.09 |
spring - 스프링 표현 언어(SpEL) (0) | 2012.10.22 |
spring - @MVC 메소드에서 자동으로 리턴 모델에 추가되는 것들 (0) | 2012.10.12 |
spring - placeholder (0) | 2012.10.12 |