겉바속촉
[spring] 어노테이션 @Resource 연습 본문
728x90
반응형
1. Tire 만들기
package spring.day0625.anno2; public interface Tire { public String getTire(); }
2. KoreaTire를 만들면서 인터페이스 해주세요:)
package spring.day0625.anno2; import org.springframework.stereotype.Component; @Component public class KoreaTire implements Tire { @Override public String getTire() { // TODO Auto-generated method stub return "한국타이어"; } }
3. TireController 만들기
4. annoContext.xml 가서 추가등록
5. TireMain 만들기
6. 컴파일해서
한국타이어 나오는 지 확인해주세요
7. 캐나다타이어 만들어보기
CanadaTire 인터페이스 해주세요:)
CanadaTire
package spring.day0625.anno2; import org.springframework.stereotype.Component; @Component public class CanadaTire implements Tire { @Override public String getTire() { // TODO Auto-generated method stub return "캐나다타이어"; } }
아무것도 안하고 컴파일하면
다음과 같이 오류가 납니다
왜냐면 Controller에서는
캐나다 타이어 코리아 타이어 두개다 구동이 되기 때문인데요
이럴 때는 Autowired를 쓸 수가 없습니다:)
그럼 고쳐봅시다
Autowired는 주석처리 해주시고
Resource를 통해서 정확하게 짚어주셔야 컴파일 했을 때 결과값이 잘 나올거에요:)
package spring.day0625.anno2; import javax.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component("TIRECONT") public class TireController { //@Autowired @Resource(name = "canadaTire") Tire tire; public void process() { String s=tire.getTire(); System.out.println(s); } }
728x90
반응형
'IT일기(하반기) > SPRING' 카테고리의 다른 글
[spring] 확장자명 연습하기 (0) | 2020.06.26 |
---|---|
[spring] MVC (0) | 2020.06.26 |
[spring] 어노테이션 연습하기 (0) | 2020.06.25 |
[spring] 생성자, setter 주입 각각 연습하기 (0) | 2020.06.25 |
[spring] 생성자 + setter까지 주입해보기 (0) | 2020.06.25 |