Spring Framework/Spring IoC(39)
-
DefaultListableBeanFactory의 확장성이란?
DefaultListableBeanFactory의 확장성과 BeanPostProcessor/BeanFactoryPostProcessor의 관계를 설명해 드리겠습니다.📌 1️⃣ DefaultListableBeanFactory의 확장성이란?✔ DefaultListableBeanFactory는 스프링의 핵심 Bean Factory로, 빈을 생성, 관리, 검색, 조작할 수 있는 다양한 기능을 제공합니다.✔ 확장성이 뛰어나다는 의미는 단순히 정적인 빈 관리가 아니라, 실행 중 동적으로 빈을 조작할 수 있는 다양한 확장 포인트를 제공한다는 뜻입니다.✔ 대표적인 확장 포인트가 바로 BeanPostProcessor와 BeanFactoryPostProcessor 입니다.📌 즉, DefaultListableBeanFa..
2025.03.06 -
BeanPostProcessor / BeanFactoryPostProcessor
📌 BeanPostProcessor 및 BeanFactoryPostProcessor 완전 정리 🚀DefaultListableBeanFactory는 스프링의 핵심 빈 팩토리 구현체로 확장성이 뛰어나며, BeanPostProcessor와 BeanFactoryPostProcessor를 통해 빈의 생성, 초기화, 및 라이프사이클을 조작할 수 있습니다.📌 1️⃣ DefaultListableBeanFactory의 확장성 개요스프링은 빈의 생성, 초기화, 의존성 주입, 소멸 등 다양한 단계에서 개입할 수 있는 확장 포인트를 제공합니다.특히 BeanPostProcessor와 BeanFactoryPostProcessor는 스프링 컨테이너 내부에서 자동으로 실행되며,빈이 생성되거나 컨테이너가 초기화될 때 추가적인 로..
2025.03.06 -
@Order
📌 Spring의 @Order 애노테이션 정리Spring에서 @Order 애노테이션은 컴포넌트(Bean) 간의 우선순위를 지정하는 데 사용되는 기능입니다.여러 개의 빈이 존재할 때 어떤 순서로 주입하거나 실행할지 결정할 때 활용됩니다.1️⃣ @Order의 역할 및 기본 개념✅ @Order는 동일한 타입의 여러 빈(또는 객체) 간에 정렬 순서를 지정하는 데 사용됩니다.✅ 숫자가 낮을수록 우선순위가 높음 (1 → 1이 가장 우선적으로 실행)✅ 주로 자동 주입(Collection, List, 배열) 시 정렬, 인터셉터 및 필터 실행 순서 지정 등에 활용됨.✅ 빈 생성 순서와는 관련 없음 (의존성 및 @DependsOn에 의해 결정됨).2️⃣ @Order 사용 예제✅ 1) 동일한 인터페이스를 구현하는 여러 ..
2025.01.26 -
엔터프라이즈 관련 기능
엔터프라이즈 관련 기능은 주로 대규모 애플리케이션 개발을 지원하기 위한 추가 기능입니다. 이들은 주로 편의성, 확장성, 엔터프라이즈 통합, 그리고 유지보수성을 강화하기 위해 설계된 기능들입니다.1. 메시지 소스(MessageSource) 지원다국어 처리(i18n)를 지원하기 위해 메시지 소스를 관리합니다.ApplicationContext는 메시지 소스(MessageSource)를 내장하고 있어 다국어 지원 메시지를 로드할 수 있습니다.예제# messages.properties (기본)greeting=Hello!# messages_ko.properties (한국어)greeting=안녕하세요!@Componentpublic class MessageService { @Autowired private ..
2025.01.16 -
Service Locator Pattern
서비스 로케이터 패턴(Service Locator Pattern)은 애플리케이션에서 의존성 관리를 위한 디자인 패턴 중 하나로, 객체가 자신의 의존성을 얻기 위해 중앙화된 레지스트리 역할을 하는 서비스 로케이터를 사용하는 방식입니다. 이 패턴은 주로 객체가 직접 의존성을 생성하지 않고, 서비스 로케이터를 통해 필요한 의존성을 요청하여 얻는 구조를 제공합니다. 서비스 로케이터 패턴의 작동 방식서비스 로케이터는 애플리케이션 내에서 서비스 객체(의존성)를 등록하고, 필요한 경우 이를 클라이언트에 제공하는 역할을 합니다.클라이언트 객체는 서비스 로케이터에 의존하여 필요한 의존성을 조회하거나 검색(lookup)합니다.서비스 로케이터는 의존성을 캐싱하거나, 필요에 따라 동적 생성하여 반환합니다. 구조서비스 로케이터..
2025.01.16 -
Spring IoC
Spring의 IoC(Inverse of Control) 컨테이너에 대해 다룹니다.Section SummaryIntroduction to the Spring IoC Container and Beans, Container OverviewBean OverviewDependenciesBean ScopesCustomizing the Nature of a BeanBean Definition InheritanceContainer Extension PointsAnnotation-based Container ConfigurationClasspath Scanning and Managed ComponentsUsing JSR 330 Standard AnnotationsJava-based Container Configurat..
2024.11.15