标签:订阅 慢慢 dev 过程 init after tcl bean 源码
首先服务发布初始化bean,HSFSpringProviderBean实现了Spring的3个接口,将HSF的publish和Spring容器的生命周期绑定在一起。
1)InitializingBean,实现afterPropertiesSet接口,在init方法之前调用,执行服务发布的初始化信息
2)ApplicationContextAware,在该方法会在Spring容器加载Bean之前执行,这里面最关键的就是设定了isInSpringContainer=true。它对后面的初始化有什么用呢?一般我们在配置HSFSpringProviderBean都会指定它的init-method,也就是这个HSFSpringProviderBean加载完成后执行的一个初始化方法,这个初始化方法中就是判断isInSpringContainer的值,如果为true,则不会在这里执行publish操作。
3)ApplicationListener,这个方法会在所有的Bean初始化完成以后被Spring回调,这就保证了当所有的Bean初始化完成(包括各种设值注入和init方法执行)后,判断是事件ContextRefreshedEvent来执行publish方法,Spring销毁时,判断ContextClosedEvent事件,执行服务的关闭。
过程后续慢慢补充。。。。
标签:订阅 慢慢 dev 过程 init after tcl bean 源码
原文地址:https://www.cnblogs.com/wuchanming/p/9013330.html