XML설정 & @annotation
Bean : 문자열 클릭 - console.file출력, DB출력 : Stratage pattern(전략패턴)
오류..있음
emp
Auto-Wiring(자동으로 의존객체 주입)
: 명시적인 언급없이도 Bean이 주입되는 기능
① XML에서 autowire="byName" 속성 추가시 자동연결
: Bean의 이름(식별자)를 이용해서 연결
② XML에서 autowire="byType" 속성 추가시 자동연결
: Bean의 자료형을 이용해서 연결
③ @Autowired
: annotation을 이용하는 방식
: byType을 기반으로 주입
sample8 => byName으로 주입
sample9 => byType으로 주입
type주입이 기본...
sample10 autowire="constructor" 으로 주입
: class에 설정
: 해당 클래스를 Bean으로 등록
@Component를 이용하면 id는 class의 이름을 사용 : 첫글자는 소문자 !
=> @Component("myFood") : myFood가 Bean의 ID
Annotation 설정을 이용하려면 XML에 특별한 code를 넣어야 함
=> code로 살펴보자.(나중에)
: 자동으로 Dependency 설정하기 위해 사용
1. constructor에 붙을 수 있음
2. field에 붙을 수 있음
3. method에 붙을 수 있음 (일반적으로 setter를 지칭, but 일반method에도 붙일 수 있음)
추가 내용
1. 동일한 data type을 가지는 객체를 주입
2. 만약 같은 Type이 2개 이상이면 field명, parameter이름으로 주입
3. @Qualifier => @Autowire와 같이 씀
4. @Resource
=> @Autowired와 기능은 똑같음(자동주입)
: @Autowired는 Type으로, @Resource는 이름(byName)으로 !
Autowired와 Qualifier를 합친??
anno.sample1
@Autowired
@Autowired(required=false) -> Test
@Autowired를 이용할 때 constructor/