웹 개발 노트

CHAPTER 1. 스프링 시작하기 - (1) 스프링이란?

코블리_vv 2022. 6. 26. 21:32
728x90
반응형

🍀 스프링이란?

1. 스프링 애플리케이션 컨텍스트라는 컨테이너를 제공

◼ 애플리케이션 컴포넌트들을 생성하고 관리

 

◼ 애플리케이션 컴포넌트 또는 빈들은 스프링 애플리케이션 컨텍스트 내부에서 서로 연결되어 완전한 애플리케이션 만듦

2. 빈의 상호연결은 의존성 주입(Dependency Injection, DI) 패턴을 기반으로 수행됨

◼ 애플리케이션 컴포넌트에서 의존하는 다른 빈의 생성과 관리를 자체적으로 하는 대신 별도의 개체(컨테이너)가 해주며, 이 개체에서는 모든 컴포넌트를 생성, 관리하고 해당 컴포넌트를 필요로 하는 빈에 주입한다.

 

◼ 일반적으로 생성자 인자 또는 속성의 접근자 메서드를 통해 처리된다.

3. 자바 기반 구성

◼ 스프링의 XML 구성은 구식 방법

 

◼ 스프링은 자동으로 컴포넌트들을 구성할 수 있는 자동-구성 기능이 있어 별도의 XML 구성이나 자바 구성이 없어도 된다.

자동 - 구성

◼ 자동 연결(autowiring)과 컴포넌트 검색(component scanning)이라는 스프링 기법을 기반으로 함

 

◼ 컴포넌트 검색을 사용하여 스프링은 자동으로 애플리케이션의 classpath에 지정된 컴포넌트를 찾은 후 스프링 애플리케이션 컨텍스트의 빈으로 생성할 수 있다.

 

◼ 스프링은 자동 연결을 사용하여 의존 관계가 있는 컴포넌트를 자동으로 다른 빈에 연결한다.

 

 

@Configuration 어노테이션

각 빈을 스프링 애플리케이션 컨텍스트에 제공하는 구성 클래스라는 것을 스프링에게 알려줌

 

@Bean 어노테이션

각 메서드에서 반환되는 객체가 애플리케이션 컨텍스트의 빈으로 추가되어야 한다는 것을 나타냄

 

 

이 글은 '스프링 인 액션(크레이그 윌즈 지음)'을 참고하여 작성하였습니다.

728x90
반응형