SPATIUM Desktop
주소복사
About Operating System Languages Tools Favorites Notice Visit TEST  
     ADK (3)
     android (3)
     ASP (5)
     ASP.Net (1)
     C# (5)
     HTML (9)
     JAVA (7)
     JavaScript (9)
     jQuery (5)
     Mobile Web (2)
     node.js (1)
     Oracle (8)
     PHP (7)
     Spring Framework (4)
     SQL (16)
     WPF (5)
   ID  
   Password  
  |  
  Location United States
  IP Address 18.205.176.85
2019. 11
12
3456789
10111213141516
17
181920212223
24252627282930
Category  Languages, JAVA
Writer 김태우 Date 2019-07-31 11:51:54 Visit 165

 

DI(Dependency Injection), 의존주입

 

의존관계에 있는 객체를 생성하지 않아도, 그 종속객체를 사용할 수 있는 것

 

의존관계에 있는 객체를 생성하지 않아도, 그 종속객체를 사용할 수 있는 것, 하나의 객체에서 다른 하나의 객체를 사용하는 관계

예를 들어 A 클래스 내에서 B 클래스를 사용한다면, AB는 의존관계에 있다고 할 수 있다. ('AB에 의존', B가 변한다면 A가 변하기 때문)

 

하기 참조 

public class A {
    
    /**
     * new B();와 같이 객체를 생성해주어야 함
     */
    B b = new B();
    
    b.method1();
}

 

스프링에서는 아래와 같이 사용

public class A {

    @Autowired
    B b;

    b.method1();
}

 

 

IoC(Inversion of Control), 제어의 역전

본래 B클래스의 생성자 호출 new B(); 의 제어권한은 B에게 있는데, B의 제어권한을 수동적으로 바꾸어,

프레임워크(컨테이너)에게 그 제어권한을 주는 것, 이렇게 하는 가장 큰 이유는 생성자 호출 뿐만 아니라,

생성된 객체의 생명주기 '전체'에 대한 권한, 관리를 프레임워크(컨테이너)에게 주어 개발자가 비즈니스 로직에만 집중할수 있게

 

 

Tags  DI, IOC, 의존주입, 제어의 역전, Dependency Injection, Inver
  Relation Articles
[Languages-JAVA] (2019-07-31 11:51:54)
[Languages-JAVA] JAVA JDBC/DBCP/JNDI (2018-04-12 16:47:35)
[Languages-Oracle] 비용계산방법 (2015-07-16 17:31:23)
[Languages-WPF] Binding Converter : IValueConverter (2013-08-06 12:16:38)
[Languages-WPF] [WPF] Dispatcher, Invoke (2013-07-30 18:15:21)
[Languages-JavaScript] Add SyntaxHighLighter on CKEditor (2013-03-04 16:58:08)
[Languages-HTML] CSS padding (2012-03-23 17:19:09)
[Languages-HTML] Div 태크 (2011-12-08 13:12:41)
  Your Opinion
Member ID
150 letters
Copyright (C) SPATIUM. All rights reserved.
[SPATIUM]WebMaster Mail