/**
* Spring Bean生命周期
* 加载BeanDefinition ->
*
* 实例化Bean createBeanInstance ->
*
* 初始化Bean populateBean ,initializeBean
* initializeBean{
* invokeAwareMethods(beanName, bean);
*
* wrappedBean = applyBeanPostProcessorsBeforeInitialization(wrappedBean, beanName);{
* @PostConstruct ...
* }
*
* invokeInitMethods(beanName, wrappedBean, mbd);{
* ((InitializingBean) bean).afterPropertiesSet();
* invokeCustomInitMethod(beanName, bean, mbd);
* }
*
* wrappedBean = applyBeanPostProcessorsAfterInitialization(wrappedBean, beanName);
* }
*
*/