bean2 [Spring boot] Spring Singleton Bean Java Singleton PatternJava의 Singleton Pattern이란 무엇일까?Singleton 패턴은 인스턴스를 불필요하게 생성하지 않고,오직 JVM 내에서 한 개의 인스턴스만 생성하여 재사용을 위해 사용되는 디자인 패턴이다.하지만 멀티스레드 환경에서 문제가 생길 수 있어, Thread-safe 한 형태로 구현해야 한다.따라서 synchronized를 이용하여 Singleton 패턴을 대부분 구현할 수 있다.public class Singleton { private static Singleton instance; private Singleton(){} public static synchronized Singleton getInstance() { if(instance == null).. 2024. 8. 9. [Spring boot] Filter에서 Bean 객체 사용이 가능한 이유 Filter의 개요Filter는 Web Context에서 관리되므로 Spring의 Bean으로 등록 못한다는 설명이 많다.아래 그림은 Web Context와 Spring Context에 대한 이해를 높이는 그림이다. 해당 그림을 보면 Spring 컨테이너 보다 큰 서블릿 컨테이너의 Filter가 Spring에 의해 관리되는 것은 이상할 수 있다. 하지만 현재 Filter는 Spring Bean으로 등록 및 의존성 주입도 가능하다.예전에 Filter는 실제로 Spring 컨테이너에서 관리되지 않았고, Bean의 의존성 주입도 불가능하였다.하지만 DelegatingFilterProxy의 등장으로 Bean 등록 및 의존성 주입도 가능해졌다. DelegatingFilterProxy필터(Filter)는 서블릿이 .. 2024. 8. 7. 이전 1 다음