站内搜索:
首页 >> 前端 >> 内容
spring三种实例化bean方法

时间:2016/12/5 9:33:03

spring 三种实例化bean的方法

1.用构造器来实例化的方式配置

配置文件:
<bean id="标示" class="包名.类"/>
<bean name="标示" class="包名.类"/>
类代码和普通的没有区别,这个是比较常用的

2.使用静态工厂方法实例化的方式配置

配置文件:
<bean id="demo" class="com.csdn.DemoFactory" factory-method="getInstance"/>
类代码:
package com.csdn;

public class DemoFactory {
    public DemoFactory(){
        System.out.println("DemoFactory实例化");
    }
    public static Demo getInstance(){
        return new Demo();
    }
}
package com.csdn;

public class Demo {
    public Demo(){
        System.out.println("Demo实例化");
    }
}

3.使用实例工厂方法实例化配置

配置文件:
<bean id="demo2factory" class="com.csdn.Demo2Factory" />
<bean id="demo1" factory-bean="demo2factory" factory-method="getInstance"/>
类代码:
package com.csdn;

public class Demo2Factory {
    public Demo2Factory(){
        System.out.println("Demo2Factory实例化");
    }
    public Demo getInstance(){
        return new Demo();
    }
}

测试代码如下

package com.csdn;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Demotest {
    @Test
    public void test(){
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
        Demo demo = applicationContext.getBean("demo",Demo.class);
        System.out.println("静态工厂产生的demo"+demo);
        Demo demo2 = applicationContext.getBean("demo1",Demo.class);
        System.out.println("实例工厂产生 的demo"+demo2);
    }
}

测试结果如下:
Demo2Factory实例化
Demo实例化
Demo实例化
静态工厂产生的democom.csdn.Demo@51e2adc7
实例工厂产生 的democom.csdn.Demo@1a8a8f7c

后面再写一下使用注释的

  • 上一篇:带你快速玩转canvas(1)上手和染色
  • 下一篇:[实用小代码]将固定格式的EXCEL版题库转成HTML
  • 返回顶部