spring InitializingBean and init-method
来源:互联网 发布:送女生的礼物 知乎 编辑:程序博客网 时间:2024/06/08 12:40
InitializingBean 为接口,使用后会与spring框架耦合起来,只有一个方法afterPropertiesSet()
init-method 可以在bean的配置文件属性中设置,无耦合
afterPropertiesSet 与init-method 方法相比,afterPropertiesSet()先执行
org.springframework.beans.factory.support. AbstractAutowireCapableBeanFactory完成一个Bean初始化方法的调用工作。 AbstractAutowireCapableBeanFactory是XmlBeanFactory的超类,再 AbstractAutowireCapableBeanFactory的invokeInitMethods方法中实现调用一个Bean初始化方法:
public void invokeInitMethods(String beanName, Object bean, RootBeanDefinition mergedBeanDefinition){
if(bean instanceof InitializingBean){
bean.afterPropertiesSet();
}
if(mergedBeanDefinition != null && mergedBeanDefinition.getInitMethodName() != null){
invokeCustomInitMethod(beanName,bean,mergedBeanDefinition.getInitMethodName() );
}
public void invokeCustomInitMethod(beanName,bean,initMethodName() {
Method initMethod = BeanUtils.findMethod(bean.class,initMethodName);
if(initMethod == null){
throw Exception("no such method");
}
if (!Modifier.isPublic(initMethod.getModifiers())) {
//设置accessible为true,可以访问private方法。
initMethod.setAccessible(true);
}
try{
initMethod.invoke(bean,(Object[])null);
}catch(Exception e){
e.printStackTrace();
}
}
- spring InitializingBean and init-method
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- spring-InitializingBean init-method postConstruct
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- Spring InitializingBean和init-method
- spring initializingBean vs init-method && 自动装配
- Spring的InitializingBean和init-method
- Spring的InitializingBean和init-method
- Spring的InitializingBean和init-method
- Spring的InitializingBean和init-method
- spring InitializingBean init-method postConstruct 执行顺序
- 浅谈Spring的InitializingBean和init-method
- Spring的InitializingBean和init-method
- 【zz】设计触摸交互的几点考虑
- 12句让人心疼的话
- 伤心的文字、心痛的感觉
- 虚函数的 内存布局
- 程序员的十层楼
- spring InitializingBean and init-method
- 有关myeclipse的设置_快捷键
- JavaScript事件绑定的方法说明
- C#四种排序算法
- 允许SWT Table的Tableitem多行显示
- 偶,也能做到
- 优秀程序员的十个习惯
- MANIFEST.MF 文件内容详解
- SWT里的表格编程(翻译)