스프링에서 자바 설정을 사용하고 있습니다. 목표는 BeanFactoryPostProcessor의 단계에서 beanDefinion 클래스를 대체하는 것입니다.스프링 자바 설정과 BeanFactoryPostProcessor
I'v은 빈
@Bean
public User user() {
CustomUser user = new CustomUser();
user.setName("UserA");
return user;
}
새로운 클래스 "NewTypeOfCustomUser"를 얻고 NewTypeOfCutsomUser하여 CustomUser를 교체하고 싶습니다.
이전에 사람이 XML 구성을 사용 중일 때이를 수행하는 예를 보았습니다.
BeanDefinition.setBeanClassName
메서드를 사용하여 수행됩니다. 그러나 BeanFactoryPostProcessor의 작업 단계에서 내 케이스의 beanDefinition 클래스는 null입니다. Java Config는 XML 구성과 완전히 다른 방식으로 작동합니다.
제 질문은 자바 구성을 사용하여이 절차를 수행 할 수 있습니까?
예, 그렇게 할 수 있습니다. 그러나 제 목표는이 일을하는 또 다른 방법을 찾지 않고 배우는 것입니다. 커스텀 @DeprecatedCustom (newImplementation = NewImplementation.class) 주석을 구현하고 싶습니다. 내 Custom BeanFactoryPostProcessor는 beanDefinition의 클래스가 해당 주석에 의해 주석을 달고 있는지 확인하고, 사용 중지 된 beanDefinition 클래스를 대체하는지 확인합니다. –