반응형

https://windorsky.tistory.com/manage/newpost/?type=post&returnURL=%2Fmanage%2Fposts%2F

di 스프링 관련 파일은 위의 티스토리에서 다운 받으셔서 세팅해 주시면 됩니다.

 

이전 글에서는 SETTER을 이용한 DI를 실습해 보았습니다.

이번에는 생성자를 이용한 DI기능을 실습해 보도록 하겠습니다.

  person.xml을 다음과 같이 작성합니다. <bean>태그를 이용해 id가 personService1인 빈을 생성하고 <constructor-arg> 태그를 이용해 생성자 호출 시 생성자 매개변수로 <value>태그의 값을 전달하여 속성을 초기화합니다. 이처럼 PersonServiceImpl 클래스의 인자가 한 개인 생성자를 이용하여 name 속성에 <value>태그의 값이 주입됩니다. 두 번째 <bean> 태그에서는 빈 생성 시 인자가 두 개인 생성자를 호출하면서 두 개의 값을 전달하여 각각의 속성을 초기화합니다. 즉, PersonServiceImpl 클래스의 인자가 두 개인 생성자를 이용해 name과 age속성에 <value>태그의 값이 차례대로 주입됩니다.

PersonServiceImpl 클래스에서는 인자가 한 개인 생성자와 두 개인 생성자를 구현합니다.

  실행 클래스인 PersonTest2를 다음과 같이 작성합니다. id가 personService1인 빈에 접근하여 sayHello() 메서드를 호출하면 age는 0으로 출력됩니다. 반면에 id가 personService2인 빈에 접근한 후 sayHello() 메서드를 호출하면 두 속성 값이 모두 출력됩니다.

main() 메서드가 있는 실행클래스가 보이는 사애에서 시행 버튼을 클릭하여 실행한 결과입니다.

반응형

'2020 > SPRING' 카테고리의 다른 글

스프링 API를 이용한 AOP 기능 구현 과정  (0) 2020.01.07
Spring AOP기능  (0) 2020.01.07
회원 기능 이용해 DI 실습  (0) 2020.01.07
의존성 주입(DI) setter을 이용한 방식  (0) 2020.01.07
프레임워크란?  (0) 2020.01.07
블로그 이미지

꽃꽂이하는개발자

,