본문 바로가기

Spring/빈6

스프링 빈이 만들어지는 과정 2026. 2. 15.
빈 스코프 스코프란 생명주기싱글톤 : 스프링의 생성부터 종료프로토타입 : 요청시 생성 주입 후 관리X리퀘스트 : HTTP 요청과 나갈때까지 유지 됨 각각의 요청마다 별도의 인스턴스세션 : HTTP 세션과 동일한 생명주기 세션마다 별도의 인스턴스애플리케이션 : 서블릿 컨텍스트와 동일웹 소켓 : 웹 소켓과 동일 리퀘스트에서 의존관계주입시 HTTP요청이 없어 빈이 안만들어져 스프링이 안켜질수도있음 그때 프로바이더 쓰면 됨의존관계 조회를 사용함 필요할때 빈이 제공됨 또한 프록시모드 사용가능 일단 CGILB로 가짜 투입해서 의존관계 맞추는 방법임 그리고 요청시점에 찾아서 동작 컨테이너에도 프록시가 등록 됨 프로토타입 :요청시 빈 생성 의존관계주입 초기화까지만 해줌반환하고 관리는 안함요청시 생성되서 싱글톤아님 @프리디스트로.. 2026. 2. 15.
스프링 애노테이션 @Controller@Controller안에는 @Component가 들어있고 @Component는 컴포넌트 스캔의 대상이된다.따라서 컴포넌트 스캔의 대상이되서 빈으로 인식한다.또한 애노테이션 기반 컨트롤러로 인식한다. 즉 매핑정보로 인식이 되는 @RequestMapping 요청정보를 매핑한다. RequestMappingHandlerMapping은 스프링 빈중에서 @RequestMapping @Controller가 클래스레벨에 붙어있는경우 매핑정보로 인식한다. 2026. 1. 5.
의존관계 주입 구체적인 의존 오브젝트와 그것을 사용할 주체라고 불리는 오브젝트를 런타임시에 연결해주는것 3가지를 충족해야함 1. 클래스나 코드에는 런타임 시저의 의존관계가 드라나지않음 인터페이스에 의존해야함 2. 런타임 시점 의존관계나 컨테이너와 팩토리같은 제3의 존재가 결정 3. 의존관계는 상용할 오브젝트의 참조를 외부에서 제공해줌 의존관계 주입은 다양한 형태로 적용할 수 있다di의 가장 중요한 개념은 제 3자의 도움을 통해 두 오브젝트 사이의 유연한 관계가 설정되도록 만드는것이 개념만 따른다면 di를 이루는 오브텍트와 구성요소의 구조나 관계는 다양하게 만들수있음일반적으로 di는 의존관계에 있는 두개의 오브젝트와 이 관계를 동적으로 설정해주는 오브젝트 팩토리(di 컨테이너) 그리고 이를 사용하는 클라이언트라는 4개.. 2025. 12. 21.
스프링 빈 관련 용어 빈스프링이 제어권을 가지고 직접 만들고 관계를 부여하는 오브젝트를 빈이라 함 스프링 빈은 스프링 컨테이너가 생성과 관계설정, 사용 등을 제어해주는 제어의 역전이 적용된 오브젝트임 빈 팩토리스프링의 IOC를 담당하는 핵심 컨테이너 빈을 등록 생성 조회 반환 관리 담당빈 팩토리를 좀 더 확장한 애플리케이션 컨택스트를 주로 사용함 애플리케이션 컨택스트빈 팩토리를 확장한 IOC 컨테이너 빈의 등록 관리등은 빈팩토리와 동일 스프링이 제공하는 각종 부가 서비스 추가 제공싱글톤을 저장하고 관리하는 싱글톤 레지스트리이기도함애플리케이션 컨텍스트는 IOC방식을 따라 만들어진 일종의 빈 팩토리애플리케이션 컨택스트와 빈 팩토리는 동일하다고 생각하면 됨빈 팩토리는 빈을 생성하고 관계르 설정하는 ioc의 기본 기능에 초점을 맞춘.. 2025. 12. 21.
제어의 역전 오브젝트가 자신이 사용할 오브젝트를 스스로 선택하지 않음 생성하지도 않음 어떻게 만들어지고 어디서 사용되느니 아루없음 모든 제어 권한을 다른 대상에게 위임 모든 오브텍트는 위임받은 제어 권한을 갖는 특별한 오브젝트에 의해 만들어짐 2025. 12. 21.