spring实例化一:InstantiationStrategy

本文深入探讨Spring框架中Bean的实例化策略,介绍InstantiationStrategy接口及其在Bean生成过程中的作用,包括从配置文件获取Bean定义信息,通过构造方法和工厂Bean实例化对象等关键步骤。

 
    DefaultListableBeanFactory对bean的管理工厂,包括bean的生成,从class到bean的实例化。spring特为这个实例化过程,定义了接口InstantiationStrategy,直译为实例化策略。里面分别定义了几个接口方法。
 
public interface InstantiationStrategy {
 
    // bd 从配置文件或者注解中获取的bean定义信息
    // beanName bean的名称
    // owner bean的工厂
    // 通过这三个参数,实例化对象
    Object instantiate(RootBeanDefinition bd, String beanName, BeanFactory owner)
            throws BeansException;
 
    // ctor 实例化指定的类的构造方法
    // args 实例化制定构造方法的实例化参数
    // 通过这五个参数,实例化对象
    Object instantiate(RootBeanDefinition bd, String beanName, BeanFactory owner,
            Constructor<?> ctor, Object... args) throws BeansException;
 
    // factoryBean 工厂bean
    // factoryMethod 工厂method
    // args  工厂bean的实例化参数
    // 通过这六个参数,实例化对象
    Object instantiate(RootBeanDefinition bd, String beanName, BeanFactory owner,
            Object factoryBean, Method factoryMethod, Object... args) throws BeansException;
}

 

 
继承类图:
 
在spring中,接口设计的很到位,后面可以配置不同的实现。spring自己的实现,请看下文。
 
 
 

转载于:https://www.cnblogs.com/sten/p/5762514.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值