Pedido de autoconexión de primavera y @PostConstruct

Tengo una pregunta sobre el orden de cableado automático y@PostConstruct lógica en primavera. Por ejemplo, después del código de demostración, tengo una clase principal de Spring Boot:

@SpringBootApplication
public class Demo1Application {

    @Autowired
    BeanB beanb;

    public static void main(String[] args) {
        SpringApplication.run(Demo1Application.class, args);
    }
}

y 2@Service Definiciones:

@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();
    }
}

y tengo el siguiente resultado:

frijol a se llama

imprimirme se llama en Bean B

se llama beanb


Mi pregunta es cómo se realiza el cableado automático paso a paso como en el escenario anterior.
Y cómoprintMe() método debeanb se llama sin llamar a su@PostConstruct ¿primero?

Respuestas a la pregunta(2)

Su respuesta a la pregunta