본문 바로가기

프로그래밍 기초/JSP

[Spring]의존과 DI (의존주입)

의존이란?

변경에 의해 영향을 받는 관계

한 클래스가 다른 클래스의 메소드를 실행할 때 이를 의존한다고 표현한다. 

 

DI를 통한 의존처리

DI는 dependency injection(의존주입)의 약자이다.의존하는 객체를 직접 생성하는 대신 의존객체를 전달받는 방식을 사용한다. 

 

DI를 사용하는 이유

객체A를 전달받는 클래스가 세곳이라고 가정해보자. 객체A는 클래스 세곳이 의존하는 객체이다. 그런데 객체A에 수정이 생겼다.

DI 를 사용하지 않는다면 클래스 세곳에서 일일히 생성된 객체A를 하나하나 수정해야한다.

하지만 DI를 사용하면 변경할 곳이 의존주입 대상이 되는 객체를 생성하는 코드 한 곳뿐이다.

 

 

 

 

위의 예시는 service에서 @Autowired어노테이션을 통하여 핵심의존객체인 Dao를 주입받는 것을 보여준다.  Dao객체를 직접 생성하지 않아도 바로 사용할 수 있다.