공부/Java
웹 어플리케이션과 싱글톤
린구
2024. 5. 7. 19:26
반응형

대부분의 스프링 애플리케이션은 웹!!
웹 애플리케이션은 보통 여러 고객이 동시에 요청함

그런데 스프링 없이 순수한 DI 컨테이너로 객체 참조값을 비교해보면

두 참조값이 다른 것을 알 수 있음
그런데 만약 고객이 요청할 때 마다 항상 새로운 객체를 생성한다면 메모리 낭비가 심할 것이다!!!!
이를 해결하기 위해 싱글톤 패턴을 사용한다
객체를 하나 만든 뒤 해당 객체를 공유하는 것이다
싱글톤 패턴 - 클래스의 인스턴스가 딱 1개만 생성되는 것을 보장하는 디자인 패턴

싱글톤 패턴을 사용하여 싱글톤 객체를 생성하고

테스트 실행 시 둘 모두 같은 객체를 참조하는 것을 볼 수 있다..
신기하닷!!!!! 생성자를 private 처리해서 숨기다니
근데 스프링 컨테이너는 모든 Bean에 이 싱글톤 패턴을 적용해준다!!!!!!!!!!! 대박적
반응형