引言
我们上一篇文章中,已经完成了Aware类型的回调机制如何实现的。这次,我们将了解类初始化机制(InitializingBean)如何实现。
本文所有的代码都在这个项目工程里,大家需要的时候可以随时取用。传送门
这个机制是为了在新建bean之前能进行一些简单的初始化的工作,实现机制和我们上一篇讲的Aware类接口不能说像,简直就是一毛一样,具体代码如下:
package com.zhu.spring;
//新建一个接口
public interface InitializingBean {
void afterPropertiesSet() throws Exception;
}
//check bean name aware
if (instance instanceof BeanNameAware) {
//force cast to BeanNameAare and call its method
((BeanNameAware)instance).setBeanName(beanName);
}
//check initalizing bean
//接口的具体实现,和上面一致
if (instance instanceof InitializingBean) {
//force cast to BeanNameAare and call its method
((InitializingBean)instance).afterPropertiesSet();
}