[Spring] 스프링 빈의 라이프 사이클
·
개발/Spring
스프링 빈의 라이프사이클은 스프링 컨테이너에 의해  관리된다. 다음은 스프링 컨테이너의 작동 과정과 스프링 빈의 라이프사이클 단계이다.1. 빈 정의 로드 (Bean Definition Loading):컨테이너는 설정 메타데이터(XML, JavaConfig, 어노테이션)를 읽어 어떤 빈들을 생성하고 관리해야 할지 파악, 이 정보를 빈 정의(Bean Definition) 라고 함.빈 정의는 빈의 클래스, 스코프, 의존성, 라이프사이클 콜백 메서드 등의 정보를 담고 있음.2. 빈 인스턴스화 (Bean Instantiation):컨테이너는 빈 정의를 기반으로 리플렉션(Reflection) 을 사용하여 빈 객체의 인스턴스를 생성.3. 의존성 주입 (Dependency Injection - DI):컨테이너는 빈 인..
[Spring] 스프링 컨테이너의 종류와 주요 메소드
·
개발/Spring
스프링 컨테이너의 종류는 BeanFactory 와 ApplicationContext로 크게 두 가지이다. 1. BeanFactory1.1 설명.가장 기본적인 형태의 컨테이너객체의 생성과 의존성 주입에 대한 기본적인 기능을 제공객체를 실제로 사용하는 시점에 생성(lazy-loading) 합니다. 즉, 애플리케이션 시작 시 모든 빈을 생성하는 것이 아니라, 해당 빈이 요청될 때 생성주로 리소스가 제한적인 환경(예: 모바일, 임베디드) 에서 사용일반적으로 애플리케이션에서는 BeanFactory를 직접 사용하기 보다는 BeanFactory를 확장한 ApplicationContext를 사용1.2 BeanFactory의 주요 메소드getBean(String name):설명: 지정된 이름의 빈 인스턴스를 반환합파라미..
[Spring]스프링 빈을 컨테이너에 등록하는 방법
·
개발/Spring
스프링 IoC 컨테이너는 설정 메타데이터를 읽어들이고 빈을 생성하여 관리하는 방식으로 작동한다고 했다.그러면 실제로 어떻게 스프링 빈을 등록하는지 알아보자. 1.어노테이션 자바 객체를 만들때는 클래스를 작성한다. 해당 클래스명에 어노테이션을 사용하면 편리하게 스프링 빈으로 등록 할 수 있다.1. 어노테이션으로 스프링 빈을 등록하는 방법과 핵심 어노테이션:@Component: 가장 기본이 되는 어노테이션으로,클래스명에 붙어 해당 클래스를 스프링 빈으로 등록하도록 지시일반적으로 특별한 역할이 없는 클래스에 사용스테레오타입(Stereotype) 어노테이션: @Component를 상속받아 만들어진 어노테이션.  마찬가지로 스프링 빈으로 등록되며, 특정 계층이나 역할등의 의미를 부여하기 위해 사용되는어노테이션이다..
[Spring] IoC / DI 란 무엇일까?
·
개발/Spring
1. IoC 와 DI는 무엇일까? 제어의 역전 (IoC): 기존에는 개발자가 직접 객체를 생성하고 연결했지만, IoC에서는 IoC 컨테이너가 객체의 생성과 연결을 대신 관리한다.즉, 객체 생성및 관리 제어의 주체가 프로그래머에서 IoC 컨테이너로 바뀌었다고 하여,제어의 역전(inversion of control)이라고 부른다의존성 주입(DI):IoC의 구체적인 구현 방식 중 하나로, 객체가 필요로 하는 다른 객체(의존성)를 IoC 컨테이너가 외부에서 주입(제공)해주는 방식이다. 2. 스프링에서는 IoC를 어떻게 구현하고 있을까?  스프링 IoC 컨테이너는 설정 메타데이터를 읽어들이고 빈을 생성하여 관리하는 방식으로 작동한다. IoC 컨테이너: 객체(빈)의 생성, 의존성 관리, 생명 주기 관리 등을 담당하..