Ich verwende Java-Konfigurationen im Frühjahr. Das Ziel ist es, die BeanDefinion-Klasse auf einer Stufe von BeanFactoryPostProcessor zu ersetzen.Spring Java-Konfigurationen und BeanFactoryPostProcessor
I'v bekam eine Bohne
@Bean
public User user() {
CustomUser user = new CustomUser();
user.setName("UserA");
return user;
}
und eine neue Klasse "NewTypeOfCustomUser" und möchte die CustomUser durch NewTypeOfCutsomUser ersetzen.
Bevor ich ein Beispiel dafür gesehen habe, als ein Typ auf XML-Konfigurationen war. Es wird unter Verwendung von
BeanDefinition.setBeanClassName
Verfahren durchgeführt. Allerdings ist die Klasse von beanDefinition in meinem Fall auf der Ebene von BeanFactoryPostProcessor null. Es scheint, dass Java Config auf eine völlig andere Art und Weise als XML-Configs funktioniert.
Also meine Frage: Ist es möglich, diese Prozedur mit Java-Konfigurationen zu tun?
Ja, ich könnte es so machen. Aber mein Ziel ist es zu lernen, nicht einen anderen Weg zu finden, dies zu tun. Ich möchte benutzerdefinierte Annotation @DeprecedCustom (newImplementation = NewImplementation.class) implementieren. Was mein benutzerdefinierter BeanFactoryPostProcessor tun muss, ist zu überprüfen, ob die Klasse einer BeanDefinition durch diese Annotation mit Anmerkungen versehen ist, und wenn ja, dann ersetze die veraltete BeanDefinition-Klasse –