기본 콘텐츠로 건너뛰기

라벨이 WAS인 게시물 표시

Java Thread ContextClassLoader 완전 정리: getContextClassLoader() 개념과 활용법

Java Thread ContextClassLoader 완전 정리: getContextClassLoader() 개념과 활용법 AI 생성 이미지: Java Thread ContextClassLoader 완전 정리: getContextClassLoader() 개념과 활용법 클래스 로더는 자바 런타임에서 클래스와 리소스를 찾는 핵심 메커니즘입니다. 그중 getContextClassLoader() 는 단순한 조회 호출이 아니라, 표준 위임 모델이 닿지 않는 상황에서 올바른 구현체나 리소스를 찾도록 돕는 실무용 도구입니다. 이 글에서는 개념을 명확히 하고, 실제 환경에서 어떻게 안전하게 활용하는지 단계별로 설명합니다. 1. 🏛️ 자바 클래스 로더의 기본 원칙 (위임 모델) JVM의 클래스 로더는 기본적으로 위임(Delegation) 모델을 따릅니다. 하위 로더가 클래스를 직접 로드하기 전에 먼저 상위 로더에게 요청하며, 상위 로더가 로드를 실패하면 하위 로더가 시도합니다. 이 설계는 충돌 방지와 안정성을 위해 고안되었습니다. 클래스 로더 로드 경로 Bootstrap (부트스트랩) JRE의 핵심 라이브러리 ( rt.jar 등) Extension (확장) JRE의 확장 디렉토리 ( lib/ext ) ...