IT모아

스프링 DI(Dependency Injection) 개념 및 설정 방법!! 본문

Spring(스프링)

스프링 DI(Dependency Injection) 개념 및 설정 방법!!

아롱사태남 2015.07.05 15:37

우선 DI를 알기 전에 Ioc 개념 부터 알고 넘어갑시다

 

IoC(Inversion of Control) 란?

자바가 등장하고 자바 기반으로 애플리케이션을 개발학 시작하던 최초의 시기에는 자바 객체를 생성하고

객체간의 의존관계를 연결시키는 등의 제어권을 개발자가 직접 가지고 있었다. 그러나 서블릿, EJB가 등장하면서 개발자들의 독점적으로 가지고 있던 제어권이서블릿과 EJB를 관리하는 컨테이너에게 넘어가 버렸다. 객체에 대한 제어권이 컨테이너에게 넘어가면서 객체의 생명주기를 관리하는 권한 또한 컨테이너들이 전담할 수 밖에 없게 되었다. 이처럼 객체의 생서에서부터 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀐것을 의미하는 것이 제어권의 역전, 즉 IoC라는 개념이다.

 

다음으로는 DI 가 무엇인지 알아 보도록 하겠습니다.

 

DI(Dependency Injection) 란?

DI는 Spring에서 새롭게 지원하는 IoC의 한 형태로써각 계층 사이, 각 Class 사이에 필요로 하는 의존관계가 있다면 이를 컨테이너에 자동적으로 연결시켜주는 것으로 각 Class 사이의 의존관계 를 Bean 설정

정보를 바탕으로 컨테이너가 자동적으로 연결해 주는 것을 의미합니다.

 

자 그럼 Bean 설정을 어떻게 하는지 봅시다 ㅎㅎ

 

web.xml 에 적용한 모습입니다.

위의 web.xml은 사용 안하셔도 무방합니다 전 한번에 관리하기위해서 작성한거구요.

 

 

밑줄친 부분대로 설정하면 config/spring/ 에 context-라고 되어있는 xml을 모두 읽어드립니다.

 

우리가 사용하고자하는 bean 설정이 마무리되었습니다.

Test)

 

 

DI는 그냥 이해를 돕기위해 개념적으로 설명을 드리자면
new를 사용해서 객체를 참조하지 않고...레퍼런스를 가져다가
쓰시는거라고 이해를 하시면 될꺼 같네요 ..(개인적으로 이해한 사항입니다)

1 Comments
댓글쓰기 폼