草庐IT

getBeanByType

全部标签

spring之getBeanByType探究

前言spring容器获取bean的方式主要有两种,即byName和byTypebyName方式相对简单,即ObjectgetBean(Stringname),通过beanName获取,因为容器中存储的就是一个beanName->bean实体的映射,如果没有创建,则通过beanName查找bean定义,通过bean定义去创建即可而byType,即TgetBean(ClassrequiredType),则复杂一点,因为不管是bean定义容器还是bean容器存储形式都是以beanName为key的map,所以它的获取方式肯定要多一步type->name的转换源码其实虽然容器的key是beanName