手动从spring BeanFactory 获取bean (二)

原创 2012年03月21日 14:38:55

自己的类 实现org.springframework.beans.factory.BeanFactoryAware 接口  

BeanFactoryAware 接口中只有一个方法  setBeanFactory(BeanFactory beanFactory)

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;

public class SpringBeanFactory implements BeanFactoryAware {

	private static BeanFactory beanFactory;
	
	public static Object getBean(String beanName) {
		 return beanFactory.getBean(beanName);
	}
	
	public static <T> T getBean(String beanName, Class<T> clazs) {
		 return clazs.cast(getBean(beanName));
	}
	
	public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
		SpringBeanFactory.beanFactory = beanFactory;
	}
}


applicationContext.xml

<bean id="springBeanFactory" class="com.xx.service.util.SpringBeanFactory" />

遗留一个问题

spring 容器什么时候 会调用BeanFactoryAware 实现类  也就是说调用SpringBeanFactory   setBeanFactory方法 ?

版权声明:本文为博主原创文章,未经博主允许不得转载。

Spring获取bean方式(BeanFactory和ApplicationContext)

(本文转自 ......忘了) Bean工厂 (com.springframework.beans.factory.BeanFactory)是Spring框架最核心的接口,它提供了高级IoC的配...

Spring之Bean在BeanFactory的生命周期

Bean在BeanFactory中的生命周期如图所示:关于Bean的生命周期中几个接口:bean中关于生命周期的接口可以分为两类,一类是容器级的生命周期接口,用于对bean的共性的设置。一类是bean...

Spring Bean的生命周期之我的理解(三)------BeanFactory和FactoryBean

前言大家可能使用Spring框架已经很久了,但是对其中的一些概念可能会比较模糊,比如BeanFactory和FactoryBean,诈一看,两个没啥区别,仔细研究后发现,其实本质上是两个不同的单元。...

【Spring】普通bean、FactoryBean、BeanFactory的区别与联系

在Spring中这三点比较容易混淆:一. FactoryBean、BeanFactory的区别其实这两点没有什么联系,只是命名上比较相似,所以常常被拿出来比较。BeanFactoryBeanFacto...

Spring之BeanFactory中Bean的生命周期

spring中bean实例化的过程主要有四个关键点: Bean本身定义的方法,如构造函数,静态代码块,属性设置器等 Bean级生命周期控制接口的方法,如BeanFactoryAware,BeanNam...

工厂模式--模拟spring的bean工厂beanFactory

今天咱们自己写一个工程用于模拟spring的bean工厂,在spring中我们可以把类配置到applicationContext.xml文件中,然后就可以从beanFactoy中取出这个类的对象,这里...

Spring学习笔记之bean和BeanFactory

1、Spring容器的根接口:org.springframework.beansfactory.BeanFactory。Spring的任何容器实现类都会直接或间接的实现该接口。该接口的四种基本方法: ...
  • Kal_al
  • Kal_al
  • 2017年03月09日 22:49
  • 91

Spring BeanFactory实例化Bean的过程

Spring BeanFactory实例化Bean的过程     Bean的实例化是Bean生命周期的一个非常重要的环节,一般来说,初始化后,就不再改变了,直到bean被从BeanFactory...

spring中bean,factorybean与beanfactory

1. 普通Bean的创建spring 中的普通bean的创建是通过读取配置文件,将所有配置文件信息保存到beandefinition中,在使用getbean的时候通过反射创建实例,然后再将属性值填充。...

Spring bean ApplicationContext BeanFactory 生命周期

Spring Bean 生命周期 任何一个事物都有自己的生命周期,生命的开始、生命中、生命结束。大家最熟悉的应该是servlet 的生命周期吧。和 servlet 一样 spring bean 也有...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:手动从spring BeanFactory 获取bean (二)
举报原因:
原因补充:

(最多只允许输入30个字)