idref 엘리먼트
<property /> 와 <constructor-arg /> 에서 DI를 할 때 다른 bean을 참조 한다면 idref 를 사용할 수 있습니다.
<bean id="theTargetBean" class="..."/>
<bean id="theClientBean" class="...">
<property name="targetName">
<idref bean="theTargetBean" />
</property>
</bean>
이건 아래의 것과 같습니다.
<bean id="theTargetBean" class="..."/>
<bean id="client" class="...">
<property name="targetName">
<value>theTargetBean</value>
</property>
</bean>
차이점
1. idref를 사용하면 참조하는 이름의 bean이 실제 존재하는지 배포 시에 검증하게 됩니다.
2. 참조
하는 bean이 같은 파일 안에 정의 되어 있을 때 <idref local="빈이름" />형태로 쓸 수 있는데 이렇게
쓰면 XML 파싱 할 때 XML 검증을 통해 설정에 문제가 있을 때 에러를 발견할 수 있습니다.