728x90
반응형
SMALL
스프링이란?
자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크이다.
Config
최근에는 XML 파일 대신 자바 기반의 Configuration을 사용하는 추세이다.
- @Configuration : 각 빈이 스프링 애플리케이션 컨텍스트에 제공하는 구성 클래스라는 것을 스프링에게 알려주는 역할
- @Bean : 각 메서드에서 반환되는 객체가 애플리케이션 컨텍스트의 빈으로 추가된다.
- 각 Bean의 ID = 해당 Bean을 반환하는 메서드의 이름
Bean
애플리케이션의 핵심을 이루는 객체이며, Spring IoC Container에 의해 인스턴스화, 관리, 생성된다.
Spring Bean Life Cycle
Bean Scope
- singleton
- 기본적으로 모든 Bean은 Singleton
- Spring IoC Container에 하나의 객체만 존재한다.
- Spring Container에서 한 번 생성되고 Container가 사라질 때 Bean도 제거된다.
- prototype
- 모든 요청에서 새로운 객체를 생성한다.
- GC에 의해 Bean이 제거된다.
- request
- 하나의 Bean 정의에 대해 하나의 HTTP Request의 생명주기 안에서 단 하나의 객체가 존재한다.
- 각각의 HTTP Request는 자신만의 객체를 가진다.
- session
- 하나의 HTTP Session의 생명주기에 단 하나의 객체가 존재한다.
- global session
자동 연결과 컴포넌트 검색
컴포넌트 검색을 사용하여 스프링은 자동으로 애플리케이션의 classpath에 지정된 컴포넌트를 찾아 빈으로 생성한다.
빈 생성 시 자동 연결을 통해 의존 관계가 있는 컴포넌트를 다른 빈에 자동 주입한다.
부트스트랩
@SpringBootApplication = @SpringBootConfiguration + @EnableAutoConfiguration + @ComponentScan
현재 클래스를 구성 클래스로 지정하고, 스프링 부트 자동 - 구성을 활성화한다.
스프링 부트의 간편함이 여기서부터 시작된다고 본다.
스프링부트
스타터 의존성과 자동 - 구성, 엑츄에이터, CLI를 제공
자료 출처
- http://javaking.tistory.com
- Spring in Action - 크레이그 월즈
728x90
반응형
LIST
'Study > Spring in Action' 카테고리의 다른 글
[Spring in Action] Spring Security & LDAP & CSRF (0) | 2021.01.24 |
---|---|
[Spring in Action] JDBC & JPA 데이터로 작업하기 (0) | 2021.01.24 |
[Spring in Action] Spring Filter & Interceptor & AOP (0) | 2021.01.23 |
[Spring in Action] Spring AOP 예제 만들어 적용하기 (0) | 2021.01.23 |
[Spring in Action] Spring AOP & AspectJ (0) | 2021.01.23 |