요르딩딩
[Spring 분석] (No.2)Bean, Application Context(Bean Factory)란 본문
Bean
1. 빈 또는 빈 오브젝트는 스프링 Ioc방식으로 관리하는 오브젝트라는 뜻입니다.
2. 스프링에서 사용하는 모든 오브젝트가 다 Bean은 아닙니다.
3. 스프링이 직접 생산과 제어를 담당하는 오브젝트만을 Bean이라 부릅니다.
Bean Factory
1. 스프링의 Ioc를 담당하는 핵심 컨테이너입니다.
2. 보통은 이를 바로 사용하지 않고, ApplicationContext를 이용합니다.
3. Bean의 생성과 제어 관점에서 얘기할때 부릅니다.
Application Context
[설명]
1. 이는 Ioc컨테이너, 스프링컨테이너, 빈 팩토리라고 부르기도 합니다.
2. 이는 BeanFactory인터페이스를 상속했으므로 BeanFactory의 확장 Ioc컨테이너라고 보시면 됩니다. (ApplicationContext > BeanFactory)
3. Bean을 등록하고 관리하는 기본적인 기능은 BeanFactory와 동일힙니다. 추가로 스프링에서 제공하는 각종 부가 서비스를 제공합니다.
[동작]
1. 특정 클래스의 설정정보를 등록하고, @Bean이 붙은 메소드의 이름을 가져와 빈 목록을 만들어줍니다.
2. ApplicationContext의 getBean()메소드를 호출하면 자신의 빈 목록에서 요청한 이름을 찾고, 있다면 Bean을 생성하는 메소드를 호출해서 오브젝트를 생성시킨 후 클라이언트에게 돌려줍니다.
[장점]
1. 클라이언트는 구체적인 팩토리 클래스를 알 필요가 없습니다.
2. 종합 Ioc 서비스를 제공해줍니다.
1. Bean을 검색하는 다양한 방법을 제공해줍니다.
참고
'[Web] > [Spring]' 카테고리의 다른 글
Controller에 대해 알아보자 (0) | 2021.09.09 |
---|---|
[Spring 분석] (No.3) Jar, War, Ear란 (0) | 2021.09.06 |
[Spring 분석] (No.1) MVC 패턴이란 (0) | 2021.09.01 |
[Spring 분석] 터미널을 이용한 properties 암복호화 (0) | 2021.07.05 |
[Spring 분석] JDBC, 영속성, SQLmapper(mybatis),ORM(jpa, hibernate) (0) | 2021.06.29 |