мы используем Spring в нашем проекте, и сегодня я обнаружил, на мой взгляд, странный beaviour. На мой взгляд, Dependency Injection и аннотация @DependsOn должны быть одинаковыми в следующих обоих случаях
@Bean
public ClassA classA(){
//code
}
@Bean
public ClassB classB(ClassA classA){
someMethodWhichNeedsClassA()
}
и
@Bean
public ClassA classA(){
//code
}
@Bean
@DependsOn("classA")
public ClassB classB(){
someMethodWhichNeedsClassA()
}
Кажется, что оба эти способа не идентичны. Мне не разрешено делиться своим кодом, но в первом случае у меня есть доступ к списку, который заполнен в первом Бине, но не во втором случае. Я пытался найти что-то в документации или в других блогах, но безуспешно.
Есть у кого-нибудь идея, есть ли различия между этими двумя способами, потому что я думаю, что это как-то связано с упорядочением создания бобов, и это все.
Спасибо за любую помощь