zoukankan      html  css  js  c++  java
  • Spring中的BeanFactory和FactoryBean的区别

    简单对比

      BeanFactory接口用来生产Bean,它处理生产bean的接口体系的最顶层,它为其他具体的IOC容器提供了最基本的规范,例如DefaultListableBeanFactory,XmlBeanFactory,ApplicationContext 等具体的容器都是实现了BeanFactory,再在其基础之上附加了其他的功能。

      接口用来定制Bean的生产过程,getObject方法中可以实现自定义过程。

    JDK1.8源码

    BeanFactory接口 

    public interface BeanFactory {
        String FACTORY_BEAN_PREFIX = "&";
    
        Object getBean(String var1) throws BeansException;
    
         T getBean(String var1, Class var2) throws BeansException;
    
         T getBean(Class var1) throws BeansException;
    
        Object getBean(String var1, Object... var2) throws BeansException;
    
         T getBean(Class 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;
    
        boolean isTypeMatch(String var1, Class var2) throws NoSuchBeanDefinitionException;
    
        Class getType(String var1) throws NoSuchBeanDefinitionException;
    
        String[] getAliases(String var1);
    }

    FactoryBean接口

    public interface FactoryBean {
        T getObject() throws Exception;
    
        Class getObjectType();
    
        boolean isSingleton();
    }
    如果您觉得本文对你有用,不妨帮忙点个赞,或者在评论里留言交流,欢迎您持续关注我的博客^_^
  • 相关阅读:
    Codeforces 758D:Ability To Convert(思维+模拟)
    Codeforces 758B:Blown Garland(模拟)
    BZOJ-1053 反素数
    BZOJ-1024 生日快乐
    BZOJ-1036 树的统计
    BZOJ-1029 建筑抢修
    BZOJ-1059 矩阵游戏
    BZOJ-1026 windy数
    BZOJ-1019 汉诺塔
    BZOJ-1031 字符加密
  • 原文地址:https://www.cnblogs.com/muxuanchan/p/9782833.html
Copyright © 2011-2022 走看看