스프링은 자바 클래스를 이용하는 것 외에도, 다양한 방법을 통해 DI의존관계 설정정보를 만들 수 있다.
가장 대표적인 것이 바로 XML이다.
XML 특징
DTD : Document Type Definition (문서 형식 정의)
DI정보가 담긴 XML 파일은 〈beans〉를 루트 엘리먼트로 사용한다.
@Bean 메소드를 통해 얻을 수 있는 빈의 DI정보
XML에서 〈bean〉 을 사용해도 이 세 가지 정보를 정의할 수 있다.
자바 코드 설정정보 | XML 설정정보 | |
---|---|---|
빈 설정파일 | @Configuration | 〈beans〉 |
빈의 이름 | @Bean methodName() | 〈bean id="methodName"〉 |
빈의 클래스 | return new BeanClass(); | 〈bean class="...BeanClass"〉 |
빈의 의존 오브젝트 | this.connectionMaker = connectionMaker() | 〈bean ... 〉 〈property name="connectionMaker" ref="connectionMaker" /〉 〈/bean〉 |
XML에서의 의존관계 설정
<beans>
<bean id="myConnectionMaker" class="springboook.use.dao.DConnectionMaker" />
<bean id="userDao" class="springbook.user.dao.UserDao">
<property name="connectionMaker" ref="myConnectionMaker"/>
</bean>
</beans>
소스코드 : github