ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Spring] Bean Scope
    Spring 2025. 4. 15. 18:24

     

    minecraft-font

    Spring

     Bean Scope

     

     

    🔥  Bean Scope

        🎯 Spring 컨테이너에서 Bean이 어떻게 생성되고 관리되는지를 정의하는 개념

     

        🎯 Spring은 다양한 범위(스코프)를 제공하여 Bean의 생명주기를 설정할 수 있는데,

              각 스코프는 Bean이 얼마나 오래 유지되는지, 여러 번 사용할 수 있는지 등을 결정합니다

     

     

     

    🔥  Bean Scope 종류

    싱글톤 프로토콜
    기본으로 설정되는 스코프이다

    Spring 컨테이너 내에서 Bean이 하나만 생성되고 모든 요청이 같은 객체를 사용한다.

    • 요청할 때마다 새로운 인스턴스가 생성된다.

    • 필요한 의존관계를 주입한다.
    • 생성한 프로토타입 Bean을 클라이언트에게 반환한다.

    • 컨테이너는 프로토타입 Bean의 생성, 의존관계 주입, 초기화 까지만 수행한다.

    • 그 이후 생명주기(소멸, @PreDestroy)는 관리하지 않는다.

      클라이언트가 직접 종료 메서드를 호출해야 한다.

    Web 스코프

    request HTTP 요청마다 새로운 Bean이 생성된다.

    웹 요청이 들어오면 Bean 생성되고 요청이 (A전용 응답 B전용 응답 동시에) 완료 되면 소멸된다.

    Spring MVC로 만든 Web Aplication에서 사용하는 방식.
    session
    • HTTP 세션 동안 하나의 Bean 인스턴스를 유지한다.
    • 웹 세션이 시작되면 생성되고 종료될 때 소멸한다.
    application
    • 서블릿 컨텍스트 내에서 Bean이 단일 인스턴스로 존재한다.
    • 애플리케이션이 구동되는 동안 동일한 객체가 유지된다.

    'Spring' 카테고리의 다른 글

    [Spring] 연관관계1  (1) 2025.04.16
    [Spring] API 예외 처리 @ExceptionHandler  (0) 2025.04.15
    [Spring] @PostConstruct, @PreDestroy  (0) 2025.04.15
    [Spring] Bean 생명 주기(2)  (0) 2025.04.15
    [Spring] 생명 주기  (0) 2025.04.15
Designed by Tistory.