더북(TheBook)

1. 첫 번째 매개변수 beanName은 스프링 컨텍스트에서 추가할 빈 이름을 정의한다. 추가할 빈에 이름을 지정할 필요가 없다면 메서드를 호출할 때 null 값을 사용할 수 있다.

2. 두 번째 매개변수는 컨텍스트에 추가할 빈을 정의하는 클래스다. Parrot 클래스의 인스턴스를 추가하고 싶다면 이 매개변수에 지정할 값은 Parrot.class가 된다.

3. 세 번째 매개변수는 Supplier의 인스턴스다. 이 Supplier의 구현체는 컨텍스트에 추가할 인스턴스 값을 전달해야 한다. Supplierjava.util.function 패키지에서 찾을 수 있는 함수형 인터페이스라는 점을 기억하라. Supplier 구현체의 목적은 매개변수 없이 사용자가 정의한 값을 반환하는 것이다.

4. 네 번째 마지막 매개변수는 BeanDefinitionCustomizervarargs다. (이 이름이 익숙하지 않더라도 괜찮다. BeanDefinitionCustomizer는 빈의 다양한 특징을 구성하려고 구현하는 인터페이스일 뿐이다. 예를 들어 기본(primary) 빈으로 설정한다.) 이 매개변수는 varargs 타입으로 정의되므로 이를 완전히 생략하거나 BeanDefinitionCustomizer 타입의 값을 더 지정할 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.