xml를 이용하여 DI설정하기


<bean> 태그 : 생성할 객체 지정

 

1
2
<bean id="객체이름" class="생성할 객체의 패키지.클래스">
</bean>
cs

class : 스프링 컨테이너가 생성할 객체의 클래스 이름 기재. 

id : <bean> 태그를 이용하여 생성하는 스프링 bean 객체의 고유 이름. 미기재시 패키지.클래스명#숫자 형태로 이름을 부여함.

다른 <bean> 태그에서 참조할 때, 스프링 컨테이너에서 직접 bean 객체를 구할 때 사용. 



 <constructor-arg> 태그 : 생성자 방식 설정

 

1
2
3
<constructor-arg><value>인자값</value></constructor-arg>
<constructor-arg value="인자값" />
<constructor-arg><ref bean="다른 bean 객체 명"</constructor-arg>
cs

생성자에서 필요한 매개변수 값을 전달할 때 사용

매개변수 개수만큼 <constructor-arg> 태그를 지정하면 됨

매개변수 순서는 생성자 매개변수 순서를 따름

<ref> 태그를 통해 다른 bean 객체를 매개변수로 사용할 수 있음


<property> 태그 : 프로퍼티 방식 설정

 

1
2
3
4
<property name="프로퍼티이름">
  <value>프로퍼티값</value>
</property>
<property name="프로퍼티이름" ref="다른 bean 객체 명" />
cs

bean 객체 생성 후 setXXX메소드를 이용하여 값을 설정하는 태그



자바 콜렉션 타입 중 List, Map, Set 에 대해 값을 설정할 땐 <List>, <Map>, <Set> 태그를 사용



스프링 컨테이너 생성하기


 

1
GenericXmlApplicationContext cox = new GenericXmlApplicationContext("class path:config.xml");
cs

GenericXmlApplicationContext의 생성자로 설정한 xml파일경로를 매개변수로 전달하면 설정파일을 이용하여 스프링 컨테이너를 생성하게 됨

이후 getBean() 메소드를 통해 Bean 객체를 얻을 수 있음

사용이 끝난 스프링 컨테이너는 close() 메소드를 통해 자원 반환해야함

여러개의 xml 파일을 전달하고 싶을 땐 그 다음 파라미터에 넣어주면 됨

classpath 위치가 아닌 다른 위치에 설정 파일을 불러올 때는 file: 접두어를 사용

특정 경로의 모든 XML파일을 가져오고 싶을 땐 애스터리크(*)를 사용하여 지정

'프로그래밍 > JSP, Spring, HTML5' 카테고리의 다른 글

(Javascrpt) 페이지 이동 제어  (1) 2016.07.11
(Spring)XML을 이용한 DI 설정(2)  (0) 2016.07.10
(spring) 스프링 컨테이너 종류  (0) 2016.07.10
(JSP) 기초 정리  (0) 2016.07.10
(JSP) 게시판  (0) 2016.07.10

+ Recent posts