[Spring] 자바 리플렉션과 생성자 주입의 관계
·
Spring/Spring에서 Java 활용하기
이번 포스트에서는 Spring 프레임워크가 자바의 리플렉션 기능을 어떻게 활용하여 생성자 주입을 수행하는지에 대해 살펴보자 이번 포스트에서는 특히, 스프링의 AutowiredAnnotationBeanPostProcessor 클래스가 생성자 주입 과정에서 어떤 역할을 하는지 집중적으로 알아볼 것이다. 이 글에서는 리플렉션이 스프링 내부에서 어떻게 사용되는지에 집중하여 설명한다. 이를 통해, 스프링의 내부 동작 방식에 대한 더 깊은 이해를 얻을 수 있을 것이고 자바 리플렉션의 중요성도 알 수 있을 것이라고 생각한다. AutowiredAnnotationBeanPostProcessor 클래스는 아래와 같다. 스프링은 왜 리플렉션을 사용해서 의존성 주입을 할까? 1. 스프링이 리플렉션을 통해 하는 일은 무엇일까..
[Java] 자바 리플렉션(reflection)이란?
·
JAVA
이번 포스트에서는 자바 리플렉션과 이걸 사용하는 스프링에 대해서 알아보자 1. 자바 리플렉션이란 리플렉션이란? 리플렉션은 자바에서 클래스나 멤버에 대한 정보를 런타임에 조사하고, 조작할 수 있는 기능이다. 예를 들어, 클래스의 이름, 메서드, 필드, 생성자 등에 대한 정보를 프로그램 실행 중에 알아내고, 이를 통해 객체를 생성하거나 메서드를 호출할 수 있다. 이 기능 덕분에, 개발자는 코드의 유연성과 확장성을 높일 수 있다. 리플렉션 예시 코드를 보면 Class.forName("java.lang.String")은 String 클래스에 대한 Class 객체를 가지고 온다. 그리고 getDeclaredMethods() 메서드를 사용해서 가져온 클래스에 정의된 모든 메서드의 정보를 얻어내는 것이다. 이렇게 리..