본문 바로가기
Spring/Spring

Spring singleton vs Java static

by 김짜이상 2022. 4. 17.

큰 차이점은 ScopeThread Safe 여부이다.

 

Java의 static은 ClassLoader 기준이고, Spring singleton은 ApllicationContext 기준이다.

Tomcat을 was로 사용한다고 했을때, WebApplication별로 별도 클래스로더를 사용하여 동일 WebApplication끼리 공유할 수 있게 한다.

스프링 싱글톤은 DispatcherServlet 위에 등록된 ApllicationContext별로 공유하며 Spring IoC컨테이너에서 공유가 가능하다.

스프링 싱글톤은 IoC Container에 의해 Thread Safe를 자동으로 보장하게 되어 있다.

 

반응형

'Spring > Spring' 카테고리의 다른 글

spring .env 에서 yaml 에 주입받기  (0) 2023.09.14
OpenJDK_VM_Warning 제거하기  (0) 2023.02.06
Spring IoC Container  (0) 2022.05.31
스프링 @RequestParam 에서 Enum 으로 받기  (0) 2021.02.16
스프링 부트 프로젝트 세팅  (0) 2021.02.14