김영한님의 인프런 스프링 강의를 듣고 있습니다. 모든 강의내용의 저작권은 김영한님께 있습니다. 유료 강의라서 모든 코드는 비공개 됩니다.
강의 정보: https://www.inflearn.com/roadmaps/373
우아한형제들 최연소 기술이사 출신 김영한의 스프링 완전 정복 로드맵 - 인프런
Spring, MVC 스킬을 학습할 수 있는 개발 · 프로그래밍 로드맵을 인프런에서 만나보세요.
www.inflearn.com
1. appConfig 리팩토링

2. 할인율 정책 변경

3. IoC(Inversion of Control), 제어의 역전
프로그램이 직접 프로그램의 제어 흐름을 제어하는 것이 아니라 외부에서 관리하는 것을 말한다.
우리가 만든 Imp 구현체들은 로직을 실행만 할 뿐 구현 객체를 스스로 생성하지 않는다.
4. DI(Dependency Injection), 의존관계 주입
인터페이스에만 의존해서 구현체를 만들고 실제로 어떤 구현 객체가 사용될지 모른다.
AppConfig 생성자로 의존관계 주입하면서 실습을 해봤다.
5. 컨테이너
IoC와 DI를 발생시키면서 객체를 생성하고 관리하면서 의존관계를 연결해주는 것을 말한다.
AppConfig로 실습을 해봤다. 'IoC컨테이너' 또는 'DI컨테이너' 라고 부른다.
6. Spring으로 전환
① AppConfig 수정

② 제대로 수정 됐는지 확인하기

③ 스프링 컨테이너
ApplicationContext를 스프링 컨테이너라고 한다.
기존에는 개발자가 AppConfig 를 사용해서 직접 객체를 생성하고 DI를 했지만, 이제부터는 스프링 컨테이너를 통해서 사용한다.
스프링 컨테이너는 @Configuration 이 붙은 AppConfig 를 설정(구성) 정보로 사용한다.
여기서 @Bean 이 라 적힌 메서드를 모두 호출해서 반환된 객체를 스프링 컨테이너에 등록한다.
이렇게 스프링 컨테이너에 등록된 객체를 스프링 빈이라 한다.
스프링 빈은 @Bean 이 붙은 메서드의 명을 스프링 빈의 이름으로 사용한다.
'Spring' 카테고리의 다른 글
| JPA(1), EntityManager (0) | 2024.06.01 |
|---|---|
| [Spring] XML기반의 Bean 설정(Configuration) (0) | 2024.03.21 |
| [Spring]#11 객체 지향 원리와 적용 (1) | 2024.02.18 |
| [Spring]#10 순수 Java 개발 실습 (0) | 2024.02.03 |
| [Spring]#09 Spring과 객체지향 (1) | 2024.01.30 |