spring - BeanFactory作用


作用:
  獲取ioc中的bean

public interface BeanFactory {
String FACTORY_BEAN_PREFIX = "&"; 

Object getBean(String var1) throws BeansException;

<T> T getBean(String var1, Class<T> var2) throws BeansException;

<T> T getBean(Class<T> var1) throws BeansException;

Object getBean(String var1, Object... var2) throws BeansException;

<T> T getBean(Class<T> var1, Object... var2) throws BeansException;

boolean containsBean(String var1);

boolean isSingleton(String var1) throws NoSuchBeanDefinitionException;

boolean isPrototype(String var1) throws NoSuchBeanDefinitionException;

boolean isTypeMatch(String var1, ResolvableType var2) throws NoSuchBeanDefinitionException;
  
  //查詢指定了名字的Bean的Class類型是否是特定的Class類型。這個Class類型可以由用戶來指定
boolean isTypeMatch(String var1, Class<?> var2) throws NoSuchBeanDefinitionException;
  
  // 獲取bean對應的class
Class<?> getType(String var1) throws NoSuchBeanDefinitionException;

String[] getAliases(String var1);
}

備注:
    FACTORY_BEAN_PREFIX = "&";這個主要是用於FactoryBean上。FactoryBean和BeanFactory的區別需要知道:
  BeanFactory是一個工廠,也就是一個容器,是來管理bean的;FactoryBean是一個bean,所以也是由BeanFactory來管理的,
  不過FactoryBean不是一個普通的Bean,它會表現出工廠模式的樣子(也可以理解為修飾器),是一個能產生或者修飾對象生成的工廠Bean,
  里面的getObject()就是用來獲取FactoryBean產生的對象。所以在BeanFactory中使用“&”來得到FactoryBean本身,
  用來區分通過容器獲取FactoryBean產生的對象還是獲取FactoryBean本身。

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM