Spring BeanFactory

BeanFactory是spring容器體系的父類,定義了基本的Bean操作。

public interface BeanFactory {

   String FACTORY_BEAN_PREFIX = "&";


   /**
    * 
    */
   Object getBean(String name) throws BeansException;

   /**
    * 
    */
   <T> T getBean(String name, @Nullable Class<T> requiredType) throws BeansException;

   /**
    * 
    */
   Object getBean(String name, Object... args) throws BeansException;

   /**
    * 
    */
   <T> T getBean(Class<T> requiredType) throws BeansException;

   /**
    * 
    */
   <T> T getBean(Class<T> requiredType, Object... args) throws BeansException;


   /**
    * 
    */
   boolean containsBean(String name);

   /**
    * 
    */
   boolean isSingleton(String name) throws NoSuchBeanDefinitionException;

   /**
    * 
    */
   boolean isPrototype(String name) throws NoSuchBeanDefinitionException;

   /**
    * 
    */
   boolean isTypeMatch(String name, ResolvableType typeToMatch) throws NoSuchBeanDefinitionException;

   /**
    * 
    */
   boolean isTypeMatch(String name, @Nullable Class<?> typeToMatch) throws NoSuchBeanDefinitionException;

   /**
    * 
    */
   @Nullable
   Class<?> getType(String name) throws NoSuchBeanDefinitionException;

   /**
    * 
    */
   String[] getAliases(String name);

}
  • getBean

    重載了(overload)5個getBean方法:可分爲1.按照name獲取bean。2.按照type獲取bean。

    其中getBean(String name,Object... args)與getBean(Class<T> requiredType,Object... args)方法需要注意後面的參數Object是構造方法的參數。另外bean的scope(bean在IOC容器中的生命週期)需要配置爲prototype。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章