본문 바로가기
반응형

IOC2

[개념쌓기] DI?IOC? 알수록 왜 알게 많아지는 것일까 커다란 프로젝트를 진행할 때 클래스에 대한 변경이 필요하면 다른 클래스에 영향을 끼치지 않으면서 변경이 가능해야한다.이런 상황에 더 수월하게 변경이 가능하게 도와줄수 있도록 도입된 기능이 DI(Dependency Injection)와 IoC(Inversion of Control)이다 기존에는 자바 프로그래밍시 객체를 생성할 때, 직접 클래스에 new연산자를 이용해 생성했으나 DI는 컨테이너가 이를 수행해준다. 그렇게 되면 직접적인 연관 관계가 발생하지 않는데,이처럼 클래스들의 변경이 자유로워지는 것을 느슨한 결합이라고 한다. 각 클래스 간 결합도가 높게되면 나중에 프로젝트가 복잡해질시 유지보수가 힘들게 된다. 그렇게 등장한 개념이 바로 IoC(Inversion of Con.. 2022. 8. 7.
TIL_ 스프링 IOC 컨테이너 -빈등록 스프링 IoC 컨테이너 DI를 사용하기 위해서는 객체 생성이 우선 되어야 하는데 이것을 생성해주는 것이 스프링이다. 필요한 객체를 생성하여 관리하는 역할을 대신해준다. - 빈(Bean) : 스프링이 관리하는 객체 - 스프링 IoC 컨테이너 : '빈'을 모아둔 통 스프링 IOC컨테이너에 어떻게 빈을 등록하고 사용하는지 알아보자 스프링 '빈' 등록 방법 1. @Component >클래스 선언 위에 설정 @Component public class ProductService { ... } >스프링 서버가 뜰 때 스프링 IoC에 '빈' 저장 @Component 클래스에 대해서 스프링이 해주는 일 // 1. ProductService 객체 생성 ProductService productService = new Pro.. 2022. 8. 5.
반응형