Mam pytanie dotyczące kolejności automatycznego okablowania i logiki @PostConstruct
na wiosnę. Na przykład poniższy kod demo mam główną klasę Wiosna boot:Wiosenna kolejność autowirowania i @PostConstruct
@SpringBootApplication
public class Demo1Application {
@Autowired
BeanB beanb;
public static void main(String[] args) {
SpringApplication.run(Demo1Application.class, args);
}
}
i 2 @Service
definicje:
@Service
public class BeanB {
@Autowired
private BeanA beana ;
@PostConstruct
public void init(){
System.out.println("beanb is called");
}
public void printMe(){
System.out.println("print me is called in Bean B");
}
}
@Service
public class BeanA {
@Autowired
private BeanB b;
@PostConstruct
public void init(){
System.out.println("bean a is called");
b.printMe();
}
}
i mam następujący wynik:
fasola A nazywamy
drukuj mnie nazywa się Bean B
beanb nazywa
Moje pytanie brzmi jak autowiring odbywa się krok po kroku jak scenariuszu powyżej?
A jak nazywa się printMe()
metoda beanb
bez wywoływania jej @PostConstruct
?
[Link] (https://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/beans. html # bean-dependency-resolution) do rozwiązywania zależności zależnych. –