import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
/**
* 获取应用上下文,获取Spring管理的bean
* @author zzw
* @date 2015-11-24
*/
@Component
public class SpringContext implements ApplicationContextAware {
protected static ApplicationContext context;
public static ApplicationContext getContext() {
return context;
}
@Override
public void setApplicationContext(ApplicationContext applicationContext)
throws BeansException {
context = applicationContext;
}
}
注意“Component‘注解,将该类交于Spring管理。
/**
* 获取Spring管理的bean
* @author zzw
* @date 2015-11-24
*
*/
public class BeanFactory {
/**
* 获取Spring管理的Bean
* @param beanName bean名称
* @return
*/
public static Object getBean(String beanName) {
return SpringContext.getContext().getBean(beanName);
}
}
@Service("testService")
public class TestService{}
public class Test{
private TestService testService = BeanFactory.getBean("testService");
}