Reflection API 학습후, DI 프레임워크 만들기
·
Java
JVM 구조를 이해하고 파악한 뒤에 할 수 있는 것들 중 자바의 프레임워크인 Spring에서 사용하는 DependencyInjection의 기능중에서 필드를 통한 의존성 주입(@Autowired)이 어떻게 이뤄지는지 살펴보도록 하겠다. Reflection API의 특징Reflection API는 Class 객체를 통해 클래스의 메타데이터(필드, 메서드, 생성자 등)에 접근할 수 있다.Class 객체는 JVM 내에서 해당 클래스의 메모리 정보를 나타내며, 클래스 로딩 후에 생성 된다.Reflection API를 사용하여 Class 타입의 객체를 통해 메모리에 로드된 클래스의 정보를 불러와서 해당 객체를 조작할 수 있다.Reflection을 이용하면 런타임 시에 클래스의 구조를 탐색하고, 동적으로 객체를 생..
[Spring] 4. 의존관계 자동 주입
·
스프링/스프링 핵심 기능
목차다양한 의존관계 주입 방법옵션 처리롬복과 최신 트렌드(필드를 final로 선언해주고 @RequiredArgsConstructor를 사용한다)조회 빈이 2개이상 - 문제@Autowired 필드 명, @Qualifier, @Primary 애노테이션애노테이션 직접 만들기조회한 빈이 모두 필요할 때, List, Map자동, 수동의 올바른 실무 운영 기준 다양한 의존관계 주입 방법의존관계 주입은 크게 3가지가 있다.생성자 주입setter 주입필드 주입 생성자 주입생성자 주입은 이름 그대로 생성자 메서드를 통해 의존 관계를 주입 받는 방식이다.생성자 주입 방식의 특징으로는 호출 시점에 딱 1번만 호출되는 것이 보장된다는 것이다.이를 잘 활용하면 생성자 주입 방식은 불변을 보장한다는 것인데, 불변이란 중간에 데이..
cheolhyeon
'di' 태그의 글 목록