zoukankan      html  css  js  c++  java
  • spring注入bean的五种方式

    1.属性注入

    2.构造方法注入

    3.静态工厂注入

    package com.voole.factorybeans;
    
    import com.voole.beans.TestBean;
    
    public class StaticFactoryBean {
        
        public static TestBean createInstance(){
            return new TestBean();
        }
        
    }

    <bean id="staticFactoryTestBean" class="com.voole.factorybeans.StaticFactoryBean" factory-method="createInstance" scope="prototype"></bean>


    4.实例工厂注入

    package com.voole.factorybeans;
    
    import com.voole.beans.TestBean;
    
    public class InstanceFactoryBean {
        
        public TestBean createTestBean(){
            return new TestBean();
        }
        
    }
    
    
    <bean id="instanceFactoryBean" class="com.voole.factorybeans.InstanceFactoryBean"></bean>
        
    <bean id="instanceFactoryTestBean" factory-bean="instanceFactoryBean" factory-method="createTestBean" scope="prototype"></bean>

    5.FactoryBean注入(这种方式最为简单)

    package com.voole.factorybeans;
    
    import org.springframework.beans.factory.FactoryBean;
    
    import com.voole.beans.TestBean;
    
    public class TestFactoryBean implements FactoryBean<TestBean>{
    
        @Override
        public TestBean getObject() throws Exception {
            return new TestBean();
        }
    
        @Override
        public Class<?> getObjectType() {
            return TestBean.class;
        }
    
        @Override
        public boolean isSingleton() {
            return false;
        }
    
    }

    <bean id="testBean" class="com.voole.factorybeans.TestFactoryBean"></bean>
  • 相关阅读:
    扁平化设计五大原则
    扁平化
    如何调试PHP程序
    Java中的协变与逆变
    Java的equals方法实现及其细节
    Java的clone方法效率问题
    Mac的Terminal中无法使用mvim解决方案
    SC.Lab3对于Factory的构建过程(from HIT)
    关于Lab3中对于正则表达式的应用
    关于Java构造类与对象的思考
  • 原文地址:https://www.cnblogs.com/yzjT-mac/p/6377351.html
Copyright © 2011-2022 走看看