1.
TV 인터페이스

2.
RemoteControl 인터페이스

3.
각 인터페이스를 구현한 클래스



4.
TV 인터페이스를 구현한 LgTV 클래스는,
RemoteControl 인터페이스의 참조변수 remoteControl를 멤버 (변수) 로 두고 있다.
즉, 둘은 의존 관계 이며,
의존 주입을 setter 을 통해 주입 시키기 위해, setter 메서드를 작성 했다.
5.
applicationContext.xml

<bean class = "패키지명.자료형" id = "참조변수명">
<property name = "프로퍼티명 (멤버변수명)" ref = "인자의값" />
<property name = "프로퍼티명 (멤버변수명)" value = "인자의값" />
</bean>
<bean class = "패키지명.자료형" id = "참조변수명" />
의 코드를 확인 할 수 있다.
setter로 의존주입을 하기 위해서는,
.xml 파일 내부에서, <property> 태그를 사용한것이 <constructor> 과의 차이점 이다.

위의 name 속성의 값이 setter 메서드의 이름과 동일 해야 한다.
예를들어, setter 메서드의 메서드명이,
setHwan 이면,
<property name = "hwan" /> 이어야 한다는 말이다.
그리고 setter에 인자로 의존하고 있는 객체가 들어가야 하기 때문에,
ref = "참조변수명 (객체명)" 이라고 명시를 해줘야 한다.
이 ref == 참조변수명 == 객체명 은,
<bean class = "패키지명.자료형" id = "참조변수명" /> 으로 작성 되어 있을텐데,
id == ref == 참조변수명 == 객체명 이다.
6.

[ 참고 ]
id == 참조변수명 == 객체명
은 객체를 (주체를) 주체로 사용할일이 있으면, 작성 하면 된다.
( 일단 모르겠으면, 에라모르겠다 하고 그냥 다 작성 하기.. )
'Spring 프레임워크 > 예제' 카테고리의 다른 글
"비즈니스 레이어 (서비스 레이어) 를 사용 하기" 예제 (0) | 2023.08.08 |
---|---|
예제 05 의존 주입 (Contructor Injection) (0) | 2023.08.01 |
예제 04 (.xml 파일 기타 개념) (1) | 2023.07.31 |
예제 03 ( .xml 파일을 사용하여 객체를 생성 하기 ) (1) | 2023.07.31 |
예제 02 [ Factory 패턴 ] (BeanFactory) (0) | 2023.07.31 |