인프런 커뮤니티 질문&답변

팡휘님의 프로필 이미지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

컴포넌트 스캔과 자동 의존관계 설정

빈으로 등록하는 이유

24.03.08 14:36 작성

·

435

·

수정됨

0

  1. controller, repository 이런걸 스프링 빈으로 등록하는 이유는 자주 사용하기 때문인가요 ?? 딱 1개만 생성이 되어서 메모리 낭비를 방지하기 위함인가요 ?

  2. 그리고 해당 컨트롤러/레포지토리 객체를 만들어서 스프링 컨테이너가 들고있을 때 해당 객체의 내용을 다 포함하고 있는 형태로 들고있나요?? 아니면 인터페이스처럼 가볍게?? 들고있는건가요 ??

질문이 너무 추상적이네요 죄송합니다

답변 1

1

codesweaver님의 프로필 이미지

2024. 03. 08. 15:56

안녕하세요. 팡휘님, 공식 서포터즈 코즈위버입니다.

  1. 네, 말씀하신것처럼 싱글톤으로 관리하는 이유는 메모리 절약 목적이 크다고 할 수 있습니다. 컨트롤러, 서비스, 리포지토리는 필드에 어떤 상태를 저장하며 관리할 이유가 없고, 여러번 인스턴스를 생성할 이유가 없기에 싱글톤으로 관리하기 적합한 불변객체입니다.

  2. 오브젝트(인스턴스)를 메모리에 보관, 관리합니다. 🙂 인스턴스 하나는 생각보다 메모리 사용량이 크지는 않습니다.

감사합니다.

팡휘님의 프로필 이미지
팡휘
질문자

2024. 03. 08. 18:53

답변 감사합니다! ^^

팡휘님의 프로필 이미지

작성한 질문수

질문하기