Web/Spring
[튜토리얼] 의존성 주입(3) XML
youngyin
2022. 9. 14. 00:37
1. 개요
스프링 컨테이너는 자바뿐아니라 XML이나 Groovy등 다양한 방식으로 스프링 컨테이너를 생성할 수 있다. 해당 포스팅에서는 기존 프로젝트(2022.08.29 - [Web/backend] - [튜토리얼] spring boot 게시판 curd)에 xml로 의존성을 설정하고, 테스트 해보고자 한다.
2. CODE
(1) file location
(2) source
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="noticeService" class="com.example.notice.NoticeService">
<constructor-arg name="noticeDao" ref="noticeDao"/>
</bean>
<bean id="noticeDao" class="com.example.notice.NoticeDao"/>
</beans>
나머지는 이전(2022.09.12 - [Web/backend] - [튜토리얼] 의존성 주입(2) 자바코드)과 동일하게 작성되었다.
3. 결과
(1) TEST CODE
4. 마무리하면서
(1) 스프링 컨테이너
Spring에서 자바 객체를 관리하는 공간으로, 관리되는 객체는 Bean에 해당한다.
- ApplicationContext나 BeanFactory를 스프링 컨테이너라고 한다.
- ApplicationContext는 BeanFactory의 기능을 상속받는다.
- ApplicationContext는 빈 관리기능 + 편리한 부가기능을 제공한다.
(2) 파일 구성
스프링 컨테이너는 다양한 형식의 설정 정보를 받아들일 수 있도록 유연하게 설계되어 있다. 파일의 구성은 Java Code(2022.08.30 - [작성중] - [튜토리얼] 의존성 주입(2)자바코드)와 동일하다. 또한 이를 통해 아래의 구조를 유추할 수 있다.